2012-03-22 9 views
2

は、これは私が私もmediaItemCollectionのいくつかのインデックスからMPMediaItemオブジェクトを初期化し、そのデリゲートメソッドMPMediaPickerControllerを使用して選択したファイルのパスを取得する方法は?

- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection 
{ 
    /*I know only here I can get path but don't know how? 
     mediaItemCollection don't have such kind of properties or any 
     method to get selected file path. 

     So is there any other way to do so? 

     Note: I required this path, so that I can store it somewhere and can play it in future. 
    */ 
} 

答えて

3

を実装しました

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    player=[MPMusicPlayerController iPodMusicPlayer]; 

    picker=[[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeAnyAudio]; 

    [picker setDelegate:self]; 

    [email protected]"Add an audio to application"; 
} 

メディアピッカーリストを開くために、コードをしたかであります.items配列:

MPMediaItem *anItem = (MPMediaItem *)[mediaItemCollection.items objectAtIndex: row]; 

そして、-valueForPropertyを呼び出す:方法:

NSURL *assetURL = [anItem valueForProperty: MPMediaItemPropertyAssetURL]; 

あなたがMPMediaItemから得ることができる他のプロパティがありますが、ここで説明します。http:一般的なメディアItemプロパティキー」の下//bit.ly/GGs3XI

ルック"

希望すると便利です。 Tams

+0

NSData * someData = [NSData dataWithContentsOfURL:yourURLVariable]; – tams

関連する問題