2017-04第四周

不积跬步,无以至千里;不积小流,无以成江海。——荀子

[TOC]

2017-04-24

一、“Command /usr/bin/codesign failed with exit code 1”报错修复

在DerivedData目录(Xcode-Preference->Locations->点击Derived Data下的箭头)和当前项目目录下执行命令:xattr -rc .

Xcode 8 can't archive “Command /usr/bin/codesign failed with exit code 1”


2017-04-25

一、解决UIDocumentInteractionController预览txt文件时中文乱码问题

更改后的代码:


//这里以追加的形式写入文件

    dispatch_async(writeLogQueue, ^{

        //打开一个文件准备更新(读取或写入)

        NSFileHandle *fileHandle = [NSFileHandle fileHandleForUpdatingAtPath:[self logFilePath]];

        //将文件指针的当前位置(偏移量)放在文件末尾处

        [fileHandle seekToEndOfFile];

        //在文件指针的当前位置写入,写入完成后文件指针的当前位置自动更新

        //采用UTF8编码会导致在浏览器中正常,在真机上显示乱码

        [fileHandle writeData:[content dataUsingEncoding:NSUTF16StringEncoding]];

        [fileHandle closeFile];//关闭文件

    });

采用UTF8写入txt文件会导致在模拟器中预览txt文件时中文显示正常,但在真机上预时中文显示乱码的问题。


2017-04-26

一、环信聊天发送用户轨迹消息实现

环信官方文档关于发送用户轨迹消息的说明如下:

2017-04第四周_第1张图片

发送消息的代码非常简单,但是要自定义Cell。通过阅读环信的代码,发现需要完成以下任务:

  • 自己写一个EMChatBaseBubbleView的子类,在这个子类中实现自定义样式的布局。
  • 实现layoutSubviewssizeThatFits:setModel:bubbleViewPressed:heightForBubbleWithObject:这几个方法。
  • 在EMChatViewCell中的bubbleViewForMessageModel:bubbleViewHeightForMessageModel:方法中根据判断添加自己定义的BubbleView。(我这里是通过ext中的msgtype有track值来判断的,略麻烦。)
  • 最后在聊天页面的cellIdentifierForMessageModel:方法中判断并返回一个针对用户轨迹消息的cellIdentifier。

2017-04-27

一、NSLog和异常输出重定向

iOS 捕获日志和异常
iOS学习笔记40-日志重定向

二、获取NSUserDefaults保存的所有值

通过[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]方法可以获得本地沙盒中保存的所有键值对,包括系统设置的和第三方设置的以及自己设置的。

三、通过配置UIFileSharingEnabled实现文件共享

可以通过在Info.plist中设置UIFileSharingEnabled为YES来实现文件共享。设置后通过设备连接到电脑,打开iTunes可以访问APP中共享的文档。

四、自己实现的DebugWindow开源出来啦


2017-04-28

尝试寻找QLPreviewController预览txt文件时能自动滚动到底部的问题无果,如果哪位大神知道解决办法的请不吝赐教。

你可能感兴趣的:(2017-04第四周)