2016-03-20 7 views
0

ich den folgenden Code bin mit einem Video zu einer benutzerdefinierten Fotos Sammlung zu exportieren:Hinzufügen von Video zu benutzerdefinierten Fotos Sammlung Rückkehr Fehler

PHPhotoLibrary *photoLibrary = [PHPhotoLibrary sharedPhotoLibrary]; 
__block PHAssetCollection *album; 

PHFetchResult *fetchResult = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAny options:nil]; 

for(int i = 0; i < fetchResult.count; i++) 
{ 
    PHAssetCollection *collection = [fetchResult objectAtIndex:i]; 

    if([collection.localizedTitle isEqualToString:@"Pose Pro"]) 
    { 
     album = collection; 
     break; 
    } 
} 

if(!album) 
{ 
    __block PHObjectPlaceholder *placeHolder; 

    [photoLibrary performChanges:^{ 
     PHAssetCollectionChangeRequest *changeRequest = [PHAssetCollectionChangeRequest creationRequestForAssetCollectionWithTitle:@"Pose Pro"]; 

     placeHolder = changeRequest.placeholderForCreatedAssetCollection; 
    } completionHandler:^(BOOL success, NSError * _Nullable error) { 
     PHFetchResult *fetchResult = [PHAssetCollection fetchAssetCollectionsWithLocalIdentifiers:@[placeHolder.localIdentifier] options:nil]; 

     album = fetchResult.firstObject; 
    }]; 
} 


[photoLibrary performChanges:^{ 
    PHAssetChangeRequest *assetChangeRequest = [PHAssetChangeRequest creationRequestForAssetFromVideoAtFileURL:_videoURL]; 
    PHObjectPlaceholder *assetChangePlaceHolder = assetChangeRequest.placeholderForCreatedAsset; 
    PHFetchResult *videoAssets = [PHAsset fetchAssetsInAssetCollection:album options:nil]; 

    PHAssetCollectionChangeRequest *albumChangeRequest = [PHAssetCollectionChangeRequest changeRequestForAssetCollection:album assets:videoAssets]; 
    [albumChangeRequest addAssets:@[assetChangePlaceHolder]]; 
} completionHandler:^(BOOL success, NSError * _Nullable error) { 
    NSLog(@"Error: %@", [error localizedDescription]); 
}]; 

Wenn dieser Code ausgeführt wird ich die folgende Fehlermeldung erhalten:

Error Domain=NSCocoaErrorDomain Code=-1 "(null)" 

Dieser Code sieht anderen Codebeispielen sehr ähnlich. Hat jemand eine Idee, was ich falsch machen könnte?

Antwort

0

Ich habe es herausgefunden. Die Video-URL bezog sich auf den Ordner des Videos und nicht auf das eigentliche Video.

Verwandte Themen