2013. 1. 24. 09:01ㆍ제2외국어/iOS
iOS Multitasking 중에서도 기본이라 할 수 있는 Audio 입니다.
[프로젝트 만들기 과정은 ..... 생략]
-- 프로젝트 설정
먼저 Audio를 사용하기 위한 Framework 추가하기
iOS Multitasking 중 Audio 모드를 설정.
: plist ▶ Required background modes ▶ App plays audio
( 보시면 아시다시피 전 포스팅에서 소개한 7가지의 모드라는걸 아실 수 있습니다. :D )
이 밑에는 AVAudioPlayer 를 이용해 소리를 키는 부분입니다.
( 아시는 분은 필요없는 부분입니다. )
1. import시키기 , 변수 선언
#import <AVFoundation/AVFoundation.h>
@property (nonatomic, strong) AVAudioPlayer *audioPlayer;
2. init & url 설정
// 먼저 test.mp3 라는 파일의 URL 설정
// AVAudioPlayer init
NSURL *audioFileLocationURL = [[NSBundle mainBundle]URLForResource:@"test" withExtension:@"mp3"];
audioPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:audioFileLocationURL error:nil];
// option 무한 반복 : -1
[audioPlayer setNumberOfLoops:-1];
// Category property 설정
[[AVAudioSession sharedInstance]setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance]setActive:YES error:nil];
Values for the category property
- AVAudioSessionCategoryAmbient : 동시 재생 가능, 배경음악 같은 경우
- AVAudioSessionCategorySoloAmbient : 동시 재생 불가
- AVAudioSessionCategoryPlayback : 일반적인 노래같은 경우
- AVAudioSessionCategoryRecord : 녹음만 하는 경우
- AVAudioSessionCategoryPlayAndRecord : 동시에 원할 때 ( 노래를 켜고, 녹음도 하고 )
- AVAudioSessionCategoryAudioProcessing : 코덱 및 신호 처리를 하는 동안은 재생 및 오디오를 사용하지 않을 때 원문은 xCode에서 command 버튼을 누른상태에서 카테고리를 설정하면 보실 수 있습니다. |
- OPTION
: 소리 크기 조절
ex) [audioPlayer setVolume:[sender value]]; // 값은 0.0 ~ 1.0 입니다.
3. 음악 켜기/끄기
[audioPlayer play];
[audioPlater pause];
실행 및 테스트 해본 화면입니다.
Interface 추가 및 연결하는 부분도 생략합니다.
** 참고로 시뮬레이터로 테스트할 경우 백그라운드로 잘 돌아가는지 확인이 안 되더군요.
꼭 Device를 통해서 해보시기 바랍니다.
'제2외국어 > iOS' 카테고리의 다른 글
[iOS]Font 관련하여.. (0) | 2013.04.26 |
---|---|
[iOS] Multitasking : Location (0) | 2013.01.29 |
About : iOS Multitasking (0) | 2013.01.21 |
[ios] 서버에 이미지만 보낼 때와 이미지 + 정보를 보낼 때 (0) | 2013.01.04 |
[simple]현재 위치 및 시간 알아내기. (0) | 2012.12.03 |