如何删除在特定相册中添加但在其他相册中没有添加的照片?

use*_*404 10 xcode cocos2d-iphone ios swift

我想知道swift和xcode:我如何删除在特定专辑中添加但在其他专辑中没有添加的照片.例如相机卷中添加的照片但其他相册中没有?我原则上知道,苹果只是在其他专辑中将它作为相机卷中相同照片的参考链接,所以如果在一个中删除,你将删除所有其他相册.但它有可能绕过它吗?例如,将其作为文件副本复制到具有不同名称的新相册?任何人都知道如何解决它?

谢谢,

deo*_*hal 5

您可以使用Photos框架从特定相册中删除照片。您需要PHAssetCollection反对(说album)该相册和该相册PHAsset的照片(说asset)。

为了从特定相册中删除资产,您需要使用该PHAssetCollectionChangeRequest对象创建对象(例如request),album然后在using方法asset的帮助下request将其删除removeAssets

样品

let album : PHAssetCollection = /*Your album object*/
let asset : PHAsset = /*Your Asset belongs to album*/
PHPhotoLibrary.shared().performChanges({
        guard let request = PHAssetCollectionChangeRequest(for: album) else {
            return
        }
        request.removeAssets([asset] as NSArray)
    }) { (result, error) in
        print("completionBlock",result, error)
    }
Run Code Online (Sandbox Code Playgroud)