** 개인적 메모입니다. 태클 사절 **
미디어 재생을 백그라운드모드로 해야하는 기능이 있어서 백그라운드 모드 재생관련 내용을 찾아봤다.
우선 프로젝트 설정에서
- Application does not run in background 항목이 있다면 제거.
- Required background modes 추가, Item 추가 item value 에 App plays audio 설정.(음악재생 앱이라....)
설정은 여기까지.
코드 상에서 백그라운드태스트로 작업을 시작해야하는 시점에
[code]UIBackgroundTaskIdentifier task = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:nil];[/code]
...
...
[[UIApplication sharedApplication] endBackgroundTask: task];
음악 재생의 경우
AVAudioSession 을 설정해야한다.
NSError *categoryError = nil;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&categoryError];
[[AVAudioSession sharedInstance] setActive: YES error: nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
음원이 서버에 있다면 AVAudio 를 사용해야한다.
AVAudioPlayer는 로컬 파일만 재생하다 내부 메소드에 initWithURL 이 존재하지만 여기서 말하는 URL는
애플이 좋아하는 도메인 로컬 패스의 URL...젠장..
그리고 iOS는 rtsp 프로토콜을 지원하지 않는다...유투브API의 gdata 를 이용하는 경우 rtsp 프로토콜의 3gp url를 얻어올 수 있어서 안드로이드 개발시에는 듣기는 3gp 로 동영상 보기는 mp4로 처리했는데.
iOS는 어쩔 수 없이 두개다 mp4다.
'Program > iOS' 카테고리의 다른 글
[iOS] Xcode - Could not launch : No such file or directory Error (2) | 2013.01.02 |
---|---|
[iOS] 비동기 네트워크 쓰래드 - NetworkThread (1) | 2012.10.19 |
iOS5 ARC를 써야하나...1 (2) | 2012.06.12 |
[iOS] XCode4 Distrubution 만들기. (0) | 2012.02.08 |
Xcode4 - Project Rename (5) | 2012.01.10 |