【问题标题】:iOS 14 Beta check PHAsset permissions for .limited access leveliOS 14 Beta 检查 .limited 访问级别的 PHAsset 权限
【发布时间】:2020-11-26 11:17:55
【问题描述】:

在 iOS 14 测试版中,有没有办法在尝试使用 PHImageManager.requestImage? 加载图像之前检查应用程序是否有权加载 PHAsset 图像这是针对 PHAuthorizationStatus.limited 的 - 当我获取 @ 中的所有资产时987654325@,它也会返回那些没有权限的人。只有当我尝试在返回的信息对象中使用PHImageManager.requestImage 加载图像本身时,我才会看到一个错误对象。

编辑:

事实证明,这只是模拟器上的问题。当我在具有 iOS 14 测试版的真实设备上运行该应用程序时,PHAssetCollection 提取仅返回用户已授予访问权限的 PHAssets

【问题讨论】:

  • 我也遇到了同样的问题,在苹果开发者论坛上开了个问题developer.apple.com/forums/thread/657130
  • @kzamanov 感谢您的编辑。在真实设备上也适用于我。
  • 感谢您发表后续评论。
  • 非常感谢您的编辑评论。

标签: phasset ios14


【解决方案1】:

尝试使用 mediaType 添加谓词,然后获取结果

【讨论】:

    【解决方案2】:

    这是我在真实设备上测试过的东西:

    即使您处于受限照片访问模式,您也可以访问所有 smart albums(以 PHAssetCollection 的形式)。但是,只有当用户明确选择时,您才能从这些集合中获取资产。没有任何可用资产的集合是没有意义的。

    受限照片访问模式下,您无法访问任何user album

    它在模拟器上的行为略有不同,因为您可以访问所有相册,无论是用户相册还是 受限照片访问 模式下的智能相册。您可以不受限制地从这些集合中获取资产。但是,如果用户没有选择这些资产,您将无法从这些资产中获取任何数据。我对未在弹出窗口中选择的资产执行了 requestImage 操作,但失败并出现域错误代码:-1。

    【讨论】:

    • 还有一点,它的目的是让您在受限照片访问模式下无法访问任何用户相册。您可以获取更多信息here at 11:11
    猜你喜欢
    • 2015-09-13
    • 2014-07-19
    • 2018-01-09
    • 2020-12-26
    • 2021-05-03
    • 2017-12-10
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    相关资源
    最近更新 更多