不积跬步,无以至千里;不积小流,无以成江海。——荀子
[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
一、环信聊天发送用户轨迹消息实现
环信官方文档关于发送用户轨迹消息的说明如下:
发送消息的代码非常简单,但是要自定义Cell。通过阅读环信的代码,发现需要完成以下任务:
- 自己写一个EMChatBaseBubbleView的子类,在这个子类中实现自定义样式的布局。
- 实现
layoutSubviews
、sizeThatFits:
、setModel:
、bubbleViewPressed:
和heightForBubbleWithObject:
这几个方法。 - 在EMChatViewCell中的
bubbleViewForMessageModel:
和bubbleViewHeightForMessageModel:
方法中根据判断添加自己定义的BubbleView。(我这里是通过ext中的msgtype有track值来判断的,略麻烦。) - 最后在聊天页面的
cellIdentifierForMessageModel:
方法中判断并返回一个针对用户轨迹消息的cellIdentifier。
2017-04-27
一、NSLog和异常输出重定向
二、获取NSUserDefaults保存的所有值
通过[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]
方法可以获得本地沙盒中保存的所有键值对,包括系统设置的和第三方设置的以及自己设置的。
三、通过配置UIFileSharingEnabled实现文件共享
可以通过在Info.plist中设置UIFileSharingEnabled
为YES来实现文件共享。设置后通过设备连接到电脑,打开iTunes可以访问APP中共享的文档。
四、自己实现的DebugWindow开源出来啦
2017-04-28
尝试寻找QLPreviewController预览txt文件时能自动滚动到底部的问题无果,如果哪位大神知道解决办法的请不吝赐教。