我的照片应用在iOS 14中的新隐私照片功能上存在严重问题,我尝试使其与.limited访问一起使用。由于这些信息很少,我希望有人可以指出正确的方向。
首先,我使用自己的ImagePicker,因为我需要根据不同的条件过滤PHAssset。然后,我将资产传递给ImagePicker,并且仅列出这些资产。其次,它显示一个操作按钮以启动相机拍摄新照片。我认为新的PHPickerViewController仍然没有这些功能吗?!
因此,有关.limited访问状态的所有内容-使用.authorized访问,一切正常! 我成功地从选择器收到了一张新拍摄的照片。但无法将其保存到我自己创建的相册中。首先,我通过
创建相册let createAlbumRequest = PHAssetCollectionChangeRequest.creationRequestForAssetCollection(withTitle: AlbumName)
成功。接下来,我准备通过
获取此相册的PHAssetCollection对象来添加图片let fetchOptions = PHFetchOptions()
fetchOptions.predicate = NSPredicate(format: "title = %@", AlbumName)
let collection = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions)
接下来,我将尝试通过
将图像保存到此收藏集PHPhotoLibrary.shared().performChanges({
let assetChangeRequest = PHAssetChangeRequest.creationRequestForAsset(from: uiImage)
let assetPlaceHolder = assetChangeRequest.placeholderForCreatedAsset
let albumChangeRequest = PHAssetCollectionChangeRequest(for: collection)
...
不起作用,因为before的收集对象为nil。因此我无法收到我刚刚创建的收藏集。
我不知道打开相机,创建相册但无法在其中存储东西有什么意义?!所以我相信我没有得到新的概念:)
顺便说一句,我读到一个弹出窗口,如果一个应用试图添加到集合中,该弹出窗口应该出现,在我看来,这种弹出窗口应该会弹出,但是我从未见过这样的弹出窗口。从集合中删除时,我知道这些。
任何帮助表示赞赏! 谢谢
答案 0 :(得分:2)
在这种情况下,不会创建您的相册(您可以在设备的相册列表中检查它)。 我为此建议创建了雷达(以使创建相册成为可能,并像Apple的照片一样授予对创建的相册的访问权限。)
您还可以检查:Domain=com.apple.accounts Code=7
完成时得到performChanges
作为错误。
因此,相册目前具有不同的行为,因此您无法使用.addOnly
访问权限来创建相册。