Xcode与开发相关的功能,你真的的都了解吗?

800 阅读3分钟

原文:www.jianshu.com/p/465e44de6…

说出来都觉得不好意思,前几天跟同事要开发者账号真机调试,这才发现原来从Xcode7开始就可以免证书真机调试了,有种天塌了了赶脚,丢脸了。为了避免类似尴尬,想来总结一下因版本迭代而出现的一些好用的功能。太久远的版本,基本都在用着了,本文主要介绍Xcode的7,8,9版本与开发相关便利功能。

一. Xcode7

免证书的真机调试

在Xcode7以后, 不再需要购买开发者以及进行繁琐的设置, 你就可以在任意的设备上进行开发和调试了. 只需要注册一个Apple ID。安装APP的过程中会提示在(通用->设备管理)页面的应用里面找到你的应用通过验证,之后就可用了。
步骤:
免证书的真机调试步骤

注意事项:

1.Bundle ID (Bundle Identifier)不能为其他中开发者账号中已经存在的APP ID
1.1 不要使用正式的bundle id 进行直接调试,如果app需要上架,并且在开发者网站没有创建appid,调试后,则会造成以后bundle id 已经存在问题
1.2 苹果可能对最频繁生成appid进行了限制(详情),7天内不能超过10个,当经常运行一些demo,非正式项目的时候,建议bundle填写或者修改成一个固定的bundle id进行调试

2.项目版本需要小于真机iOS版本

附:
Xcode 7新特性

二. Xcode8

2.1 自动管理证书和描述文件

2.2 获取系统权限更加严格

在iOS10之后需要在Info.plist中,添加新的字段获取权限,否则在iOS10上运行会导致崩溃。

麦克风权限Privacy - Microphone Usage Description 是否允许此App使用你的麦克风?
相机权限Privacy - Camera Usage Description 是否允许此App使用你的相机?
相册权限Privacy - Photo Library Usage Description 是否允许此App访问你的媒体资料库?
通讯录权限Privacy - Contacts Usage Description 是否允许此App访问你的通讯录?
蓝牙权限Privacy - Bluetooth Peripheral Usage Description 是否许允此App使用蓝牙?
语音转文字权限Privacy - Speech Recognition Usage Description 是否允许此App使用语音识别?
日历权限Privacy - Calendars Usage Description 是否允许此App使用日历?
定位权限Privacy - Location When In Use Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据
定位权限: Privacy - Location Always Usage Description 我们需要通过您的地理位置信息获取您周边的相关数据

2.3 推送增加UserNotifications框架

iOS10的推送框架UserNotifications以及UserNotificationsUI
iOS - 喵神UserNotifications 框架解析

2.4 会出现杂乱无章的Log

添加OS_ACTIVITY_MODE字段,并设置为Disable

附:
Xcode 8 的 6 大新功能一览

三. Xcode9

3.1 WiFi或有线网络调试iOS

Xcode9无线调试教程

3.2 支持AR开发

iOS开发-AR

附:
不可能不爱的 XCODE 9:最新功能详尽介绍
Xcode9 新功能

主要介绍一下与开发密切的内容,也算了解了一下,改天测测玩儿。


官方原文:What's New in Xcode 4~9

想要了解更多的内容, 可以关注一下我的个人公众号。该公众号每个工作日会有新闻推送,每周技术分享,博客更新会实时推送。做个有态度的iOS开发者,就从身边的一件件小事儿做起。满满的正能量,有没有?Do you get it?