2010-03-20 5 views
0

iPod 음악 라이브러리에서 특정 곡을 재생하고 싶습니다. 어떻게 할 수 있습니까? 제 아이디어는 MPMediaQuery의 타이틀 이름을 저장 한 다음 나중에 앱을 시작할 때 이 시작될 때 재생되므로 어느 누구도이 작업을 수행 할 수 있습니까?iPod 음악 라이브러리에서 재생

감사합니다.

답변

2

기본 해결 방법은 라이브러리에있는 노래마다 고유 한 식별자 (별칭 MPMediaItemPropertyPersistentID)를 저장하는 것입니다. 이 ID를 사용하여 노래를 재생할 수 있으며 사용자가 실행하는 동안 선택한 노래를 기억할 수 있도록 ID를 메모리에 저장할 수 있습니다. Media Player Framework 작동 방식을 모르는 경우 AddMusic 샘플 코드를 확인하십시오.

보기 컨트롤러는 MPMediaPickerControllerDelegate 프로토콜을 구현해야합니다. 사용자가 단일 노래를 선택할 수 있도록 허용한다고 가정하면 콜백의 기본 개요는 다음과 같습니다.

- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection 
{ 
    NSArray* items = [mediaItemCollection items]; 
    if ([items count] == 1) 
    { 
     MPMediaItem* song = (MPMediaItem *)[items objectAtIndex:0]; 
     NSNumber* persistentId = [song valueForProperty:MPMediaItemPropertyPersistentID]; 
     // ...Save/Play here... 
    } 
} 

이 시점에서 영구 ID를 사용하여 노래를 재생하거나 사용자 기본값으로 저장할 수 있습니다.

+1

우리가 persistentId를 알고있는 사운드를 재생하는 방법은 무엇입니까? – coure2011

+1

우리가 persistentId를 알고있는 노래를 우리 앱에 복사하는 방법은 무엇입니까? – ios

+0

@ios MPMediaPropertyPredicate 및 MPMediaQuery 클래스를 사용합니다. http://stackoverflow.com/a/10721965/1374512 –

관련 문제