我試圖導出iPod-Library中的音頻文件。我的目標是使用此iPod-Library文件在應用程序「文檔」文件夾中創建新文件。它無法僅爲某些項目創建文件。以下是我的代碼片段。某些文件的AVAsset導出失敗
AVURLAsset *songAsset = [AVURLAsset URLAssetWithURL: url options:nil];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
AVAssetExportSession *exporter = [[AVAssetExportSession alloc]
initWithAsset: songAsset
presetName: AVAssetExportPresetAppleM4A];
exporter.outputFileType = @"com.apple.m4a-audio";
NSString *songName = [filename stringByAppendingString:@".m4a"];
NSString *musicfilepath = [documentsDirectory stringByAppendingPathComponent:@"musics/"];
[[NSFileManager defaultManager] createDirectoryAtPath:musicfilepath withIntermediateDirectories:YES attributes:nil error:nil];
NSString *exportFile = [musicfilepath stringByAppendingPathComponent:songName];
NSError *error1;
if([[NSFileManager defaultManager] fileExistsAtPath:exportFile])
{
[[NSFileManager defaultManager] removeItemAtPath:exportFile error:&error1];
}
NSURL* exportURL = [[NSURL fileURLWithPath:exportFile] retain];
exporter.outputURL = exportURL;
正在逐漸錯誤如圖所示當與錯誤處理程序塊試圖下面:
[exporter exportAsynchronouslyWithCompletionHandler:^{
int exportStatus = exporter.status;
switch (exportStatus) {
case AVAssetExportSessionStatusFailed: {
NSError *exportError = exporter.error;
NSLog (@"AVAssetExportSessionStatusFailed: %@", exportError);
break;
}
}
}];
AVAssetExportSessionStatusFailed:錯誤域= AVFoundationErrorDomain代碼= -11800 「該操作不能完成」 的UserInfo = 0x214f20 {NSLocalizedFailureReason =發生未知錯誤(-12124),NSUnderlyingError = 0x218270「操作無法完成(OSStatus錯誤-12124。)」,NSLocalizedDescription =操作無法完成}
設備上的文件是否有足夠的空間?也他們已經存在,你試圖導出他們也許? –