2016-07-10 2 views
2

ALAssetsLibraryからPHPhotoLibraryに変更して、ビデオファイルを保存できるかどうかを知りたいと思っています。 ALAssetsLibrayでは、あなたが知っている、我々はそれが前にAPIとビデオファイルの保存を開始知っている可能性がありPHPhotoLibraryでは、ビデオファイルがiPhoneに保存できるかどうかを知る方法

- (BOOL)videoAtPathIsCompatibleWithSavedPhotosAlbum:(NSURL *)videoPathURL; 

誰がPHPhotoLibraryvideoAtPathIsCompatibleWIthSavedPhotoAlbumの代替APIを知っていますか?

または、正確なエラーコードがわかっています。つまり、ビデオファイルをiOSデバイスに保存できません。

ビデオファイルを保存するための私のコードは以下のようなものです、

- (void)saveVideoFile:(NSURL *)videoURL completion:(savePhotoFileCompletion)completion 
{ 
    [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ 
      PHAssetChangeRequest *assetChangeRequest; 
      assetChangeRequest = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:videoURL]; 

      PHAssetCollectionChangeRequest *assetCollectionChangeRequest = 
       [PHAssetCollectionChangeRequest changeRequestForAssetCollection:self.assetCollection]; 
      [assetCollectionChangeRequest addAssets:@[ [assetChangeRequest placeholderForCreatedAsset] ]]; 

     } 

     completionHandler:^(BOOL success, NSError *_Nullable error) { 
      DBGLog(@"success=%@, error=%@", (success ? @"YES" : @"NO"), error); 
      completion(success, error); 
     }]; 
} 

私は質問が同じ問題について話しました。

How to use PHPhotoLibrary like ALAssetsLibrary

しかし、それは正確な答えを参照していません。

答えて

1

私はAppleにTSIで質問しました。 そして、彼らの答えは、私が正しいの互換性を得ることができるように思われた以下のAPI

AVAsset *avAsset = [AVAsset assetWithURL:[NSURL fileURLWithPath:videoPath]]; 
BOOL canSaveVideo = [avAsset isCompatibleWithSavedPhotosAlbum]; 

を使用することです。

canSaveVideoの値がNOであっても、PHPhotoLibraryは動画を保存できるという重要な点が1つあります。

ありがとうございます。

関連する問題