使用PHPickerViewController与UIImagePickerController是否需申请权限?
PHPickerViewController与UIImagePickerController权限问题解答
是否必须提前申请权限?
- iOS 14+ 使用
PHPickerViewController:不需要提前申请相册权限。这个系统选择器是隔离式的,App无法直接访问整个相册,只能获取用户主动选中的资源,权限逻辑由系统自行处理。 - iOS 13及以下使用
UIImagePickerController:同样不需要提前申请权限。这个控制器默认允许打开,只有当用户在选择器内访问特定内容(比如照片流、自定义相簿)时,系统才会触发权限请求弹窗。
未申请权限就使用能否通过App Store审核?
完全可以通过审核。苹果的审核规则认可这种使用方式,因为这两个组件都是系统提供的标准选择器,本身就遵循系统的权限流程,只要App没有在未获授权的情况下私自访问相册内容,就符合合规要求。
何时需要主动申请相册权限?
当你的App需要直接访问整个相册内容时,必须主动申请权限,包括但不限于以下场景:
- 批量读取相册内所有照片/视频
- 在App内独立展示相册的全部内容(不通过系统选择器)
- 自动备份、上传相册资源到服务器
- 修改或删除相册内的内容
此时需要在Info.plist中添加对应的权限描述(NSPhotoLibraryUsageDescription,涉及写入操作还需NSPhotoLibraryAddUsageDescription),并在代码中主动调用权限请求接口。
内容的提问来源于stack exchange,提问作者Nawin P.
相关产品推荐
相关产品推荐

