iOS开发之错误收集

1. unresolved conflicts remain in this working copy

SVN提交代码, 明明在SVN上面看不到冲突代码,但提交总是会提示这样的错误, 最后解决办法:

svn resolved
svn cleanup
svn update

2. version 和 build 的区别

版本号一般是由是3个分隔的整数组成的字符串。第1个整数代表重大修改的版本;第2个整数表示实现较突出的修订;第3个整数代表维护版本。

  • version: 显示对外的版本号,和AppStore上的版本号保持一致;
  • build: 只有开发者自己才能看到,相当于内部版本号;它是为了方便开发者在多次提交审核, 若是被苹果拒绝后,此时只需要修改build版本号,version则不需要更改

同一个版本号version可以对应多个build
要检查版本更新,一般是检查Version,而不是build

//获取version版本号
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]

//获取build版本号
[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] 

3. Xcode总是无辜的频繁崩溃

刚开始遇到这个问题,内心其实是崩溃的,因为只要打开Xcode写代码就会"意外"的退出,目前选择简单直接的解决办法,删除xcuserdata文件夹就解决了Xcode的崩溃。

iOS开发之错误收集_第1张图片
xcuserdata临时文件.png

原因如下:
xcuserdata文件保存着工程内的一些临时信息(对这个工程运行过的所有开发人员的临时信息),崩溃原因一般情况下应该就是加载这些临时文件失败导致的,至于为啥之前Xcode运行没问题突然就出现这个Bug,我也不是很清楚,有知道的还望说一下哈,谢谢

4. 类型错误

[__NSCFConstantString objectForKeyedSubscript:]

这个错误大致是 - key 所对应的 value 未能识别,最后发现后端把之前返回的JSON字典给换成了JSON字符串,所以报出类型不匹配

5. Xcode的快捷键失效

打开终端 - 输入命令 : sudo /usr/libexec/xpccachectl - 输入自己的Mac密码 - 重启Mac - 这时再次打开Xcode就恢复快捷注释键啦

6. 证书配置问题

process launch failed: failed to get the task for process xxxx

这种错误是在真机调试时候出现, 原因一般是出在证书的配置上面, 调试的时候把项目的Targetcode signDistribution改成Developer`, 使用开发证书就OK啦

7. 包含远程推送的调试

iOS开发之错误收集_第2张图片
权限文件的匹配

原因 - provisioning file 中未包含当前设备, 可以把推送开关关闭, clean下就OK了

8. 对象的错误

unrecognized selector sent to instance

原因 - 一般来说是该对象为空的时候再次被调用, 还有一种可能是该对象可以是被当做另外一种对象调用了等,具体还需要结合代码来排除问题.

9. 三方库的错误

"_dns_parse_resource_record", referenced from:...... 

解决:添加依赖库libresolv

10. 类型错误

[UIView setTextColor:]: unrecognized selector sent to instance

原因: 此时拿到的UI控件并非是UILabel对象,而是UIView, 在给 UIview 发送setTextColor消息时肯定会报错的.

11.缓存造成的没法运行模拟器或真机

Please file a bug at bugreport.apple.com ...

解决:

  • cmd + shift + k
  • cmd + option + shift + k
  • 重启Xcode

会持续更新ing...

你可能感兴趣的:(iOS开发之错误收集)