美文网首页
iOS关于应用使用权限的注意点

iOS关于应用使用权限的注意点

作者: 流年划过颜夕 | 来源:发表于2018-12-14 15:39 被阅读107次

    iOS关于应用使用权限的一些注意点:
    1.项目中涉及图片,定位,录音等权限使用问题,首先一定要在info.plist中加以说明,如:
    NSCameraUsageDescription
    您可以拍摄照片或视频并分享给其他成员
    NSLocationWhenInUseUsageDescription
    您的位置信息将能够被共享给其他成员
    NSMicrophoneUsageDescription
    您可以录制音频并分享给其他成员
    NSPhotoLibraryAddUsageDescription
    您可以将图片保存到您的相册
    NSPhotoLibraryUsageDescription
    您可以将相册中的照片或视频分享给其他成员

    (1)不加对应的字段会引起调用权限失败,iOS10后Apple官方会针对某些权限直接抛异常.
    (2)要注意虽然加了对应的字段,但是描述不准确会有审核不通过的风险.

    2.要监听项目中涉及图片,定位,录音等权限的开关,有可能用户用的时候是开启的,但是用户可能因为各种原因就把某些权限关闭了,这也会引起奔溃或者报错,要做好适配。

    3.如果检测到图片,定位,录音等权限未打开,最好用弹窗教程引导用户去设置中开启,但是弹窗展示UI时也可能会遇见问题甚至奔溃。如以下信息反馈信息:
    "This application is modifying the autolayout engine from a background thread after the engine was accessed from the main thread. This can lead to engine corruption and weird crashes"
    因为要注意线程问题,一定要回到主线程更新数据和UI。

    4.权限使用时,最好用真机调试,如果用模拟器调试注意点
    (1)Xcode运行模拟器定位要通过模拟器->Debug->Location->Custom Location设定好坐标
    (2)现在模拟器使用相机Apple官方会直接抛异常,只为了告诉开发者相机不可用 (Source type 1 not available)
    "Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Source type 1 not available'"
    可提前用以下方式判断真机还是模拟器做好适配

    if TARGET_IPHONE_SIMULATOR //模拟器

    elif TARGET_OS_IPHONE //真机

    endif

    以上

    相关文章

      网友评论

          本文标题:iOS关于应用使用权限的注意点

          本文链接:https://www.haomeiwen.com/subject/aaeghqtx.html