遇见奇葩之Xcode 8

更新了Xcode8之后,简直被它"强大"的报错能力所折服,各种莫名其妙的错误,下面是我的一些错误整理及相应的解决办法,有很多我都遇到过,亲测可以,还有一些是从网上搜集的.


前言

我个人之前的Xcode7版本不是从AppStore上下载的,因为下载速度太慢,而且遇到过下载过程中提示我下载失败的问题,所以我直接在某云盘下载了一个dmg格式的Xcode,而这次升级Xcode8我是在AppStore上下载安装的(是直接下载安装,不是更新),因为AppStore里面的更新界面,没有显示可用的Xcode8更新,我只能重新下载安装,安装好后发现它直接覆盖了之前的版本,而且打开我的项目工程,也没有遇到路径不对报错的问题,正当我高兴的时候,这个时候悲剧就来了,莫名其妙的报了十个红色的错误,下面是问题截图。

问题截图

上图显示的这个问题,提示我有未申明的定义,就是告诉我某些宏定义不存在,我检查了pch文件的路径,是相对路径没有问题,所以排除了宏定义头文件路径引用不对的原因,我还尝试了重启Xcode,因为之前有的时候莫名其妙出现的比如无法导入头文件的问题,我直接重启Xcode之后就好了,但是这次没能如我所愿。最后我尝试删除编译器的DerivedData数据,之后这个问题解决了。具体步骤如下:

点击Finder--->前往文件夹/Users/你自己的电脑/Library/MobileDevice/ ----->找到资源库下的Developer -----> 在Developer下找到Xcode目录------->最后在Xcode目录下找到DerivedData目录 --------->删除出错的工程,之后重启工程就好了,问题迎刃而解

截图中所示警告还有的明确告诉我们在C99的规范中,不允许出现隐含声明的用法。这是C99规范中增加的规则,不过即便不遵守此规则,也仅仅是一个警告而已。
什么是隐含声明呢,也很简单,就是你调用函数的c文件中,没有正确包含对应的头文件。一般来说,c,c++都会将类,函数,的声明放在头文件中,这样在需要的时候包含对应头文件就可以了,在编译器的前期处理中,需要通过头文件来建立一些函数,变量,类的表,如果调用到了声明中没有的函数,编译器会认为是有危险的,显而易见,如果直接调用函数,在运行期间会出现程序异常。
因此强烈建议大家不要忽略这个警告,更不要象个别文章建议的那样把编译环境配置成C89,这样隐患依然存在。

看来在解决这些警告之前,还是多了解一下C89, C99这些语言标准比较好。

2.iOS 10 相机,相册,通讯录等系统权限问题

如果升级了iOS 10的手机下载了App,可能会导致应用崩溃。具体步骤如下,在plist文件添加下列字段即可。(凡是系统权限的问题,都需要在plist文件中,添加如下字段,HealthKit也需要,比如应用中涉及到读取用户的健康数据)

具体描述,可以自行定义

下面是一些常用的配置

| 系统权限 | 对应字段 |
|:----: |:------:|
|相机| Privacy - Camera Usage Description|
|麦克风|Privacy - Microphone Usage Description|
|相册| Privacy - Photo Library Usage Description|
|通讯录|Privacy - Contacts Usage Description|
|蓝牙|Privacy - Bluetooth Peripheral Usage Description|
|定位|Privacy - Location When In Use Usage Description|
|日历|Privacy - Calendars Usage Description |

3.iOS10 消息推送

用过极光推送的童鞋都知道,分为调试环境和正式环境,使用Xcode 8版本以后打包的应用,需要在Xcode 8中开启下面的功能,否则可能导致正式环境打包上传的应用无法接受到推送消息,极光后台推送的消息可能还会收到,但是自己服务器后台推送的消息,可能无法接收到。

必须将这个开关开启

iOS 10还引入新的推送framework,如下图。


上午10.49.23.png

4.遇到xib下报的错误

如果你用SVN管理项目,我建议你,直接找到报错的xib文件,revert一下,我就是这样解决的。还有一种是在Xcode下打开xib文件,会提示你选择模拟器,如下图:

截图

5.证书管理问题

新版的Xcode提供了证书管理功能,只要勾选下面的按钮。它会生成一个应用于你本地电脑的证书和配置文件。

证书管理配置

6.屏蔽杂乱无章的log打印

更新Xcode8之后,新建立工程,都会打印一堆莫名其妙看不懂的Log.
屏蔽的方法如下:Xcode8里边 Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加OS_ACTIVITY_MODE = Disable


707724-e81adf182229475f.png

7.代码注释插件不正常

这个是因为苹果解决xcode ghost,把插件屏蔽了。
解决方法打开终端,命令运行: sudo /usr/libexec/xpccachectl然后必须重启电脑后生效


日后会继续整理总结的,谢谢

新增 升级了Xcode之后,打开之前的工程,出现Xcode一直loading,无法载入的现象。

出错原因:可能是上次强制退出时保存xcode出错,导致之后每次打开xcode都会加载这个错误的工程,出现假死现象。

打开终端:cd /Users/mac/Library/Autosave\ Information/ (其中mac为当前登录用户名)
删除下面的文件:rm -rf Unsaved\ Xcode*
然后重新打开xcode就正常了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容