我需要從iOS應用導出視頻並獲取資產ID。在過去,你可以使用ALAssetsLibrary:如何將視頻保存到相機膠捲並獲取資產URL?
save image in camera roll and get asset url
但現在已經過時了。我想知道現在實現這個目標的新方法是什麼?謝謝!
我需要從iOS應用導出視頻並獲取資產ID。在過去,你可以使用ALAssetsLibrary:如何將視頻保存到相機膠捲並獲取資產URL?
save image in camera roll and get asset url
但現在已經過時了。我想知道現在實現這個目標的新方法是什麼?謝謝!
ALAssetsLibrary已棄用。你應該使用PhotosLibrary。
Assets Library框架自iOS 9.0起棄用。相反,使用照片框架,而iOS 8.0和更高版本則提供更多功能和更好的性能來處理用戶的照片庫。有關更多信息,請參閱照片。 在Photos框架中,PHPhotoLibrary類管理對照片庫的訪問和更改,而PHAsset和PHCollection類以及相關類上的類方法提供了查找照片和視頻資源的功能。
看到這個https://developer.apple.com/documentation/photos/phphotolibrary
這裏是保存視頻到相機膠捲,給你的URL保存視頻的示例代碼。
var placeHolder : PHObjectPlaceholder?
PHPhotoLibrary.shared().performChanges({
let creationRequest = PHAssetChangeRequest.creationRequestForAssetFromVideo(atFileURL: URL(string: videoPath)!)
placeHolder = creationRequest?.placeholderForCreatedAsset
}, completionHandler: { (success, error) in
if success {
let result = PHAsset.fetchAssets(withLocalIdentifiers: [placeHolder!.localIdentifier], options: nil)
result.firstObject?.getURL(completionHandler: { url in
// this is the url to the saved asset
})
}
})
不要忘記
import Photos
,並添加該代碼作爲擴展PHAsset:
https://gist.github.com/jVirus/2f041bb8b1936093773f0bde42af3a49