iOS开发

Xcode8和iOS10问题小结

2016-09-26  本文已影响596人  诺之林

目录

回顾

iOS8 SDK新特性

更多参考开发者所需要知道的iOS 8 SDK新特性

iOS9 SDK新特性

更多参考开发者所需要知道的iOS 9 SDK新特性

iOS10 SDK新特性

更多参考开发者所需要知道的iOS 10 SDK新特性

Xcode8新字体

相比Xcode7, Xcode8的最直观变化就是

Xcode8插件失效

保证你的Xcode8是从官方渠道下载的, 从App Store下载或者该地址离线下载

权限管理

我们需要打开info.plist文件添加相应权限的说明, 否则程序在iOS10上会出现崩溃

ios10-xcode8-issues_01.png

以下是常用权限列表

证书管理

ios10-xcode8-issues_02.png

屏蔽系统log

Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加

OS_ACTIVITY_MODE = Disable

ios10-xcode8-issues_03.png

awakeFromNib警告

以前的写法会有警告

- (void)awakeFromNib {
     // [super awakeFromNib];
}

在Xcode8中需要改成

- (void)awakeFromNib {
     [super awakeFromNib];
}

ATS(App Transport Security)

iOS 9中默认非HTTPS的网络是被禁止的, 当然我们也可以把NSAllowsArbitraryLoads设置为YES禁用ATS

但是iOS 10从2017年1月1日起苹果不允许我们通过这个方法跳过ATS!

所以不管是为了通过审核, 还是为了安全考虑, 都应该立刻, 马上, 现在就使用HTTPS!

关于更多ATS, 可以参考关于iOS 10中ATS的问题

User Notification

iOS 10对User Notification也做了大幅重构

关于更多Notification, 可以参考活久见的重构 - iOS 10 UserNotifications 框架解析

一些API更新

新增APIs

- (UIColor *)initWithDisplayP3Red:(CGFloat)displayP3Red green:(CGFloat)green blue:(CGFloat)blue alpha:(CGFloat)alpha;

在iOS 10苹果官方建议我们使用sRGB, 因为它性能更好, 色彩更丰富

废弃APIs

- (void)setStatusBarStyle:(UIStatusBarStyle)statusBarStyle animated:(BOOL)animated;

新增属性

// Indicates the semantic meaning expected by a text-entry area.
@property(nonatomic, copy) UITextContentType textContentType;
@property(nonatomic, strong) UIRefreshControl *refreshControl;

更多文章, 请支持我的个人博客

上一篇下一篇

猜你喜欢

热点阅读