问题描述
-
在做相册一块的时候,如果用户没有打开相册访问权限,会跳转到系统的设置界面,接着如果改动了权限回到 app,就会发现 app crash 了,并且重新加载了。
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
改变一下照片权限。然后华丽丽的 crash 了:
没有任何输出,没有被 All Exceptions 断点拦截到。这真是一个悲伤的故事。
问题解决
尝试去用『大众点评』、『支付宝』一类常用的 app 做了同样的尝试。发现均有此问题。
当首次请求访问相册时,系统会自动提示你在 plist 文件中配置的请求许可信息。
无论用户是否允许你的 app 访问相册,如果用户跳出应用改变了通讯簿、日历、提醒、相册的许可开关。iOS 将会 SIGKILL(无条件终止) 你的 app,以便确保你的 app 不再拿到任何过时的授权信息。当用户回到你的 app 时,你的 app 将重新加载。
综上所述,这是一个可以放任它不用管的问题。这果然是个悲伤的故事。