王绵杰的个人博客

Xcode 8.0姗姗来迟

Xcode 8.0 版本

  • Xcode 8.0GM版本已发布了一段时间,用于新一代的Xcode升级版本,这里普及一个知识:什么是GM版本,GM版是软件开发版本中的最终正式版的母版,不意外发现重大bug的话,GM版=正式x.0版。Xcode 8.0正式版也于前两天正式发布,显然它是为iOS 10而生的。
  • Xcode 8.0更新提示:

Smaller image

  • 首先,Xcode 8引入了Swift3.0,加入了更多新的特性,加入了支持iOS 10、watchOS 3、tvOS 10、macOS Sierra的SDK。
    至于详细的Release Note可以查看https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Introduction.html

  • 这里也没什么有用的信息,Xcode性能提升,能更好的支持XIB,增加了一些性能提示,更便于开发者进行工作开发,新加入了San Francisco Mono 编辑字体和新的主题,值得一说的是:

    证书管理

    Xcode支持自动管理证书的功能,当然也可以自己设置。
    Mou image
    不过建议大家勾选这个Automatically manage signing.可以很方便的为我们管理自己的证书。

    xib或者storyboard

  • 1.xib可以更方便的查看你的布局在不同尺寸设备上的显示情况了。

    image
    可以看到Xcode8.0把设备尺寸设置放在了布局的最下方,而右边里的Attributes Inspector里的尺寸选择取消了,并且我们可以按条件选择要查看的设备,点击vary for traits可以选择width或者height查看。这次可以说苹果很有良心,为这个设计点赞。

  • 2.使用Xcode8打开xib文件后,会出现下图的提示。
    image

    大家选择Choose Device即可。之后大家会发现布局啊,frame乱了,只需要更新一下frame即可。

    • 注意:如果按上面的步骤操作后,在用Xcode7打开Xib会报一下错误
    • 解决方法:需要删除xib里的

      1
      <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    • 以及把< document >中的toolsVersion和< plugIn >中的version改成你正常的xib文件中的值。

代码注释不能用的解决办法

  • 这个是因为苹果解决xcode ghost,把插件屏蔽了。

    解决方法

    打开终端,命令运行: sudo /usr/libexec/xpccachectl

    然后必须重启电脑后生效

    Xcode 8.0貌似取消了对插件的支持,因为苹果认为这会带来安全上的问题,并且提交审核会被拒绝,如果大家有什么新的解决办法请回复里告知,如果你对插件依赖性非常严重那么,可以参照让你的 Xcode8 继续使用插件

iOS 10隐私权限设置

  • iOS 10 开始对隐私权限更加严格,如果你不设置就会直接崩溃,现在很多遇到崩溃问题了,一般解决办法都是在info.plist文件添加对应的Key-Value就可以了。

image
如上图显示的是部分权限设置:蓝牙使用权限,日历,相机,通讯录,健康分享,健康更新,后台一直定位,定位许可,使用时定位等权限设置。

Xcode 8 运行一堆没用的logs解决办法

image
上图我们看到,自己新建的一个工程什么也没做直接运行打印了一堆烂七八糟的东西,我觉得这个应该是Xcode 8的问题,打印的东西也没仔细研究,看着是一些项目的状态值,如果不想每次运行都有这些东西可以在Edite Scheme——>Run——>Arguments里设置OS_ACTIVITY_MODE : disable如下图

image

iOS 10新特性