检查隐私-仅在iOS中使用照片库添加用法说明

时间:2019-04-25 21:45:20

标签: swift xcode plist phphotolibrary

我的应用仅需要plist文件中的“隐私-图片库添加用法说明”属性(应用会写入图片库,但不会读取)。

我使用以下代码检查权限:

PHPhotoLibrary.requestAuthorization { status in

            if status == .authorized {
                print("Permission granted")
            } else {
                print("Unavailable")
            }

        }

在我的应用程序的iOS设置中,即使plist仅需要“仅添加照片”,也会列出“读写”(??),并且如果“读写”,则上面的代码仅获得授权状态'被打勾(勾选“仅添加照片”只会使上面的代码进入else语句)。

当我的plist中不包含“隐私-图片库使用说明”时,为什么将“读写”列为我的应用程序有点困惑。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这是因为您正在呼叫PHPhotoLibrary.requestAuthorization

如果您只需要盲目地写到用户的相机胶卷中,请呼叫PHPhotoLibrary.requestAuthorization。只是继续写,例如通过调用UIImageWriteToSavedPhotosAlbum或UISaveVideoAtPathToSavedPhotosAlbum。运行时将代表您请求授权。

但是,如果您想与照片库本身进行交互,即通过“照片”框架进行交互,那么即使您打算做的只是写操作,也需要授权和“隐私-照片库使用说明”下的条目。


从您的评论来看,您可能对requestAuthorization的操作感到困惑。它尝试获得权限。如果您只想知道当前实际上的授权状态是什么,请致电authorizationStatus

但是,即使到那时,我们仍在谈论照片库本身,因此也就是在“设置”中称为“读写”的值。

如果您想知道您是否有权执行UIImageWriteToSavedPhotosAlbum或UISaveVideoAtPathToSavedPhotosAlbum,请继续进行调用。如果有权限问题,您会在完成处理程序中听到它。