IOS8变化大全
2016-08-03 18:53
197 查看
运用扩展(Extension)
现在apple允许我们在app中添加一个新的target,用来提供一些扩展功能。比如在系统的通知中心中显示一个自己的widget,在某些应用的action中加入自己的操作,在分享按钮里加入自己的条目,更甚至于添加自定义的键盘等。
app开发时的统一
在ios8中增加了size classes来进行布局并且使用uiviewcontroller来替代了uialertview和uiactionsheet
icloud相关
在ios7中出现了icloud和coredata结合的部分的api使其稳定性和易用性大大提高,而在ios8中更进一步推出全新的cloud kit 框架但是因为其平台限制,所以使用相对少,但是如果只是在ios平台,那么使用它就比较好。
handoff及其他ios与mac的协同开发
iOS8 中的handoff机制(就是可以在mac上继续完成在ios上半途的工作)给for both ios and mac的应用带来了一个不错的契合点和卖点。
health kit 和 home kit
这是两个比较热门的领域--可穿戴设备和智能家居--所加入的框架,health kit就是一个用户体征参加的数据库,第三方应用可以向用户申请权限使来限制使用其中的数据或者向其中汇报数据。而home kit则以家庭,房间和设备的组织形式来管理和控制家中适配了home kit的智能家电。
游戏方面
加入了scene kit,但是在一段时间内还是会被cocosadx/unity所统治。但是作为ios开发者来说因为有不需要学习和熟悉新语言的优势对于转型来说还是个不错的选择。另外在a7和以上级别的gpu推出了一套新的称为metal的绘制api。
local和remote通知的变化
现在需要显示ui或者播放器播放声音的通知包括local通知也需要实现弹窗获取用户许可。
corelocation
室内定位,cl可以直接给出建筑物中的楼层定位信息,直接使用cl中的floor获取当前楼层,如果当前位置可用会返回一个非空值来显示当前的楼层,就可以更好的扩展定位功能。
苹果在ios8中修改了定位授权协议,所以以前的app可能在ios8中无法定位,比较好的方法就是在app启动的时候调用ios8的定位授权api来获取用户的授权,这样就不用在其他地方修改了,并且还需要在plist中添加两个属性NSLocationAlwaysUsageDescription,NSLocationWhenInUseDescription,内容可以自定义也可以不填。
touch id
touch id api,现在开放了touch id的验证,但是实际还是比较有限,现在提供的api只能验证用户是不是手机主人还不能给出一个识别的标志或者唯一的编码,不过来做手机支付就比较好用像paypal.
相机和照片
新增加了photos.framework框架,这个框架用于与系统内置的photo应用进行交互,不仅可以代替原来的assets library作为图片和视屏的选取,还能与icloud照片流进行交互。除此之外,一个很重要的特性是还可以监听其他应用对于图片的改变,可以说整个框架非常灵活。
消息推送
原来我们只需要调用registerforremotenotificationtypes这个方法就可以了,但是在ios8中需要先配置再注册,也就是需要先执行registerUserNotificationSettings配置后再执行registerforremotenotificationtypes进行注册。
description属性
在ios8以前苹果允许我们为某个自定义的类添加description属性,但是在ios8以后就不可以了,只能通过重写description的git方法来实现原来的功能
UIKit框架
集合视图支持动态改变cell的尺寸,通常集合视图优先支持文本尺寸适应,但是你也可以适用于其他情况,集合视图也可以支持不同的布局。
UISearchController 替换掉UISearchDisplayController
UISplitViewController 也支持iphone了
IUNavigationController类现在有了新的选项,可以现在改变navigationbar的尺寸或者是否隐藏
UIVisualEffect类让你自定义模糊
UIPresentationController类让你分离视图控制器的内容
UIPopoverPresentationController类处理presentation内容,UIPopoverController类用它来显示pop出来的控制器。
UIAlertController类替换UIActionSheet和UIAlertView用以展示弹出层
UIPrinterPickerController类提供了一个基于控制器的视图来输出打印
可以将UIApplicationOpenSettingsURLString传给openURL方法
AVFundation框架
可以在拍照时获取信息
AVKit框架可以在ios上面使用代替media player框架
Core image框架
可以自己创建自定义图片
Core image检测器可以检测出矩形和qr码
Fundation框架
NSFileVersion类可以提供对iCloud文档以前版本的访问
NSURL 类支持存储文档的缩略图数据
NSMetadataQuery类可以搜索app打开文档的额外数据
现在apple允许我们在app中添加一个新的target,用来提供一些扩展功能。比如在系统的通知中心中显示一个自己的widget,在某些应用的action中加入自己的操作,在分享按钮里加入自己的条目,更甚至于添加自定义的键盘等。
app开发时的统一
在ios8中增加了size classes来进行布局并且使用uiviewcontroller来替代了uialertview和uiactionsheet
icloud相关
在ios7中出现了icloud和coredata结合的部分的api使其稳定性和易用性大大提高,而在ios8中更进一步推出全新的cloud kit 框架但是因为其平台限制,所以使用相对少,但是如果只是在ios平台,那么使用它就比较好。
handoff及其他ios与mac的协同开发
iOS8 中的handoff机制(就是可以在mac上继续完成在ios上半途的工作)给for both ios and mac的应用带来了一个不错的契合点和卖点。
health kit 和 home kit
这是两个比较热门的领域--可穿戴设备和智能家居--所加入的框架,health kit就是一个用户体征参加的数据库,第三方应用可以向用户申请权限使来限制使用其中的数据或者向其中汇报数据。而home kit则以家庭,房间和设备的组织形式来管理和控制家中适配了home kit的智能家电。
游戏方面
加入了scene kit,但是在一段时间内还是会被cocosadx/unity所统治。但是作为ios开发者来说因为有不需要学习和熟悉新语言的优势对于转型来说还是个不错的选择。另外在a7和以上级别的gpu推出了一套新的称为metal的绘制api。
local和remote通知的变化
现在需要显示ui或者播放器播放声音的通知包括local通知也需要实现弹窗获取用户许可。
corelocation
室内定位,cl可以直接给出建筑物中的楼层定位信息,直接使用cl中的floor获取当前楼层,如果当前位置可用会返回一个非空值来显示当前的楼层,就可以更好的扩展定位功能。
苹果在ios8中修改了定位授权协议,所以以前的app可能在ios8中无法定位,比较好的方法就是在app启动的时候调用ios8的定位授权api来获取用户的授权,这样就不用在其他地方修改了,并且还需要在plist中添加两个属性NSLocationAlwaysUsageDescription,NSLocationWhenInUseDescription,内容可以自定义也可以不填。
if (OSVersion>=8.0) { CLLocationManager *clloc = [[CLLocationManager alloc] init]; [clloc requestAlwaysAuthorization]; }
touch id
touch id api,现在开放了touch id的验证,但是实际还是比较有限,现在提供的api只能验证用户是不是手机主人还不能给出一个识别的标志或者唯一的编码,不过来做手机支付就比较好用像paypal.
相机和照片
新增加了photos.framework框架,这个框架用于与系统内置的photo应用进行交互,不仅可以代替原来的assets library作为图片和视屏的选取,还能与icloud照片流进行交互。除此之外,一个很重要的特性是还可以监听其他应用对于图片的改变,可以说整个框架非常灵活。
消息推送
原来我们只需要调用registerforremotenotificationtypes这个方法就可以了,但是在ios8中需要先配置再注册,也就是需要先执行registerUserNotificationSettings配置后再执行registerforremotenotificationtypes进行注册。
if(OSVersion>=8.0){//8.0以后使用这种方法来注册推送通知 UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge|UIUserNotificationTypeSound|UIUserNotificationTypeAlert categories:nil]; [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; UIRemoteNotificationType myTypes = UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound; [[UIApplication sharedApplication] registerForRemoteNotificationTypes:myTypes]; }else{ [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeBadge)]; }
description属性
在ios8以前苹果允许我们为某个自定义的类添加description属性,但是在ios8以后就不可以了,只能通过重写description的git方法来实现原来的功能
UIKit框架
集合视图支持动态改变cell的尺寸,通常集合视图优先支持文本尺寸适应,但是你也可以适用于其他情况,集合视图也可以支持不同的布局。
UISearchController 替换掉UISearchDisplayController
UISplitViewController 也支持iphone了
IUNavigationController类现在有了新的选项,可以现在改变navigationbar的尺寸或者是否隐藏
UIVisualEffect类让你自定义模糊
UIPresentationController类让你分离视图控制器的内容
UIPopoverPresentationController类处理presentation内容,UIPopoverController类用它来显示pop出来的控制器。
UIAlertController类替换UIActionSheet和UIAlertView用以展示弹出层
UIPrinterPickerController类提供了一个基于控制器的视图来输出打印
可以将UIApplicationOpenSettingsURLString传给openURL方法
AVFundation框架
可以在拍照时获取信息
AVKit框架可以在ios上面使用代替media player框架
Core image框架
可以自己创建自定义图片
Core image检测器可以检测出矩形和qr码
Fundation框架
NSFileVersion类可以提供对iCloud文档以前版本的访问
NSURL 类支持存储文档的缩略图数据
NSMetadataQuery类可以搜索app打开文档的额外数据
相关文章推荐
- iOS8沙盒路径的变化
- IOS8 沙盒路径的变化
- iOS--iOS8 沙盒路径变化
- iOS8 - CoreLocation的变化
- 监控/触发text input变化的事件大全,总有一个会命中
- iOS8开始默认语言有变化
- ios8中的self sizing cell和ios7动态变化字体大小
- iOS8下的开发变化
- iOS8下的开发变化
- iOS8 沙盒路径变化特性
- iOS8以后的屏幕宽高变化
- [NSLocale currentLocale] 返回值在ios8上发生变化?
- iOS8下的开发变化
- iOS8 通知的变化
- iOS8 通知的变化
- iOS8下,CoreLocation的变化
- iOS8開始默认语言有变化
- iOS8中定位服务的变化(CLLocationManager协议方法不响应,无法回掉GPS方法,不出
- 深蹲的26种变化动作(深蹲大全)
- IOS8 UILocalNotification 和之前的变化