奋斗的七月
最近在做一个环信即时聊天的项目,突然发现了一个问题,在进行聊天时候,选择图片,居然没有询问用户,直接可以访问相册,当选择了一张图片的时候,这时候才会弹出询问用户的提示框。
这个问题纠结我好久!!!最后发现iOS11,访问相册权限发生了重大变更:
一、 iOS11之前:访问相册和存储照片到相册(读写权限),需要用户授权,需要添加NSPhotoLibraryUsageDescription。
二、iOS11之后:默认开启访问相册权限(读权限),无需用户授权,无需添加NSPhotoLibraryUsageDescription,适配iOS11之前的还是需要加的。
添加图片到相册(写权限),需要用户授权,需要添加NSPhotoLibraryAddUsageDescription。
也就是说,ios11之后的系统,可以不需要进行询问用户,就可以直接访问相册。
但是这就出现了一个问题,可以不需要进行询问用户,但是选择图片之后,系统又会询问是否允许询问相册权限。这样又得用户还是不习惯这样的操作流程,还是希望当进入相册的时候,就询问用户,所以就需要代码进行控制弹框的顺序。
相册访问权限
在xcode8.0之前可以用ALAuthorizationSt