一時的にビデオを Documents ディレクトリに保存しました。
サンプル ビデオ パスは次のとおりです。
このビデオをアルバム ディレクトリに保存したいと思います。このためには、このファイルの URL をアセットの URL に変換する必要があります。
私は解決する方法を試しました..しかし、解決するのに役立ちません..誰でも案内してもらえますか..?
このコードを機能させるには、ファイルの URL をアセットの URL に変換する必要があります。これを行う方法は?
アセット URL を使用してビデオを保存するコードは既にあります。これが私のコードです。
-(void)save2cameraRoll{
NSString *albumName=@"album name";
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library addAssetsGroupAlbumWithName:albumName
resultBlock:^(ALAssetsGroup *group) {
NSLog(@"added album:%@", albumName);
}
failureBlock:^(NSError *error) {
NSLog(@"error adding album");
}];
__block ALAssetsGroup* groupToAddTo;
[library enumerateGroupsWithTypes:ALAssetsGroupAlbum
usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
if ([[group valueForProperty:ALAssetsGroupPropertyName] isEqualToString:albumName]) {
NSLog(@"found album %@", albumName);
groupToAddTo = group;
}
}
failureBlock:^(NSError* error) {
NSLog(@"failed to enumerate albums:\nError: %@", [error localizedDescription]);
}];
NSURL *fileURL = videoInputUrl;
[library assetForURL:fileURL
resultBlock:^(ALAsset *asset) {
// assign the photo to the album
[groupToAddTo addAsset:asset];
NSLog(@"Added %@ to %@", [[asset defaultRepresentation] filename], albumName);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Success" message:@"Video Saved to HubRamped Album." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles: nil, nil];
[alert show];
}
failureBlock:^(NSError* error) {
NSLog(@"failed to retrieve image asset:\nError: %@ ", [error localizedDescription]);
}];
}