0
我有一個項目,該項目使用了一個MPMediaPickerController
的,從媒體播放器中選擇音頻文件。然而,嘗試存儲它的URL的時候,我得到什麼,但null
返回。我的代碼可以看到下面:Objective-C的MPMediaItem與空URL
- (void)showMediaPicker:(NSString *)title {
MPMediaPickerController *picker = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeAny];
picker.delegate = self;
picker.prompt = title;
picker.allowsPickingMultipleItems = NO;
picker.showsCloudItems = NO;
[self.viewController presentViewController:picker animated:YES completion:NULL];
}
- (void)mediaPicker: (MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {
MPMediaItem *item = [mediaItemCollection.items firstObject];
NSURL *assetURL = [item valueForProperty:MPMediaItemPropertyAssetURL];//returning null
NSString *type = [self contentTypeForFile:assetURL.lastPathComponent];
NSString *title = [item valueForProperty:MPMediaItemPropertyTitle];
[self callbackWithName:title type:type url:assetURL];
}
無論出於何種原因,我*assetURL
是在從設備的庫中選擇一個音頻項爲零。唯一的答案我可以就這個問題找到往往涉及到URL時,從MediaPicker選擇了雲項目是null
。但是,如上所示,我已經設置了showCloudItems = NO
。
我將不勝感激任何幫助;讓我知道你是否需要任何額外的信息!
什麼是'item'的價值? –
的NSLog(@ 「%@」,項目)導致: 7217559012103102902 –
是否'NSURL * assetURL =(NSURL *)[項目valueForProperty:MPMediaItemPropertyAssetURL];'有什麼影響? –