0
PHAssetをアップロードしたいが、私は資産のファイルパスを持っていない。以下のブロックメソッドを使用してファイルをアップロードできます。しかし、これはURLを取得するための非同期メソッドです。 PHAssetファイルをアップロードするための同期方法がありますか。PHAssetをアップロードするには(ビデオと画像のみ)?
画像アセットURL:
[asset requestContentEditingInputWithOptions:editOptions
completionHandler:^(PHContentEditingInput *contentEditingInput, NSDictionary *info) {
NSURL *imageURL = contentEditingInput.fullSizeImageURL;
}];
動画ファイルのURL:
[[PHImageManager defaultManager]requestAVAssetForVideo:asset options:nil resultHandler:^(AVAsset * _Nullable asset, AVAudioMix * _Nullable audioMix, NSDictionary * _Nullable info) {
NSURL *url = (NSURL *)[[(AVURLAsset *)asset URL] fileReferenceURL];
}];
これらの非同期メソッドに対処する必要があります。また、URLがnilのファイルについても考慮してください。そのようなファイルはローカルデバイスにはなく、代わりにiCloudに存在します。 –