【问题标题】:iOS 14. requestAuthorizationForAccessLevel for PHAccessLevelAddOnly still show "Select Photos..." for save image in PhotosiOS 14. PHAccessLevelAddOnly 的 requestAuthorizationForAccessLevel 仍然显示“选择照片...”以将图像保存在照片中
【发布时间】:2020-12-31 04:23:37
【问题描述】:

我想将图像保存到照片而不显示“选择照片...”,并通过指定 PHAccessLevelAddOnly 选择保存方法。但我仍然在选择选项中看到“选择照片...”。为什么会发生这种情况?

PHAuthorizationStatus prevStatus = [PHPhotoLibrary authorizationStatus];

if (@available(iOS 14, *)) {
    prevStatus = [PHPhotoLibrary authorizationStatusForAccessLevel:PHAccessLevelAddOnly];

    if (prevStatus == PHAuthorizationStatusNotDetermined) {
        __weak typeof(self) weakSelf = self;
        [PHPhotoLibrary requestAuthorizationForAccessLevel:(PHAccessLevelAddOnly) handler:^(PHAuthorizationStatus status) {
            if (status == PHAuthorizationStatusAuthorized) {
                dispatch_async(dispatch_get_main_queue(), ^{
                    ...
                });
            }
        }];
        return;
    }
}

Xcode 版本 12.0 beta 6 (12A8189n)

【问题讨论】:

  • requestAuthorizationForAccessLevel 会显示一条消息以获得访问权限,接下来发生的事情无关紧要。
  • 我在使用UIImageWriteToSavedPhotosAlbum(_:_:_:_) 时遇到了同样的问题,所以我改用PHAssetChangeRequest.creationRequestForAsset(from:),但仍然遇到同样的问题。据我所知,这是一个错误,因为 requestAuthorizationForAccessLevel 块/闭包实际上被执行了两次。这也在 GM 种子中:/

标签: ios objective-c image photo ios14


【解决方案1】:

简单的回答,我只是忘了在 info.plist - NSPhotoLibraryAddUsageDescription 中设置密钥。

【讨论】:

  • 好的,但是您没有崩溃的事实是一个错误,您应该报告它。
  • info.plist 中有 `NSPhotoLibraryAddUsageDescriptionasdf` 但我仍然有错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-20
相关资源
最近更新 更多