[iOS]<BearPlay> ApplicationMusicPlayer 로 노래 재생 구현하기

RudinP·2024년 1월 12일
0

Projects

목록 보기
23/28

ApplicationMusicPlayer을 이용한다.
애플공식문서

MusicPlayer.swift 추가


prepareToPlay()함수는 기본적으로 play()함수 실행 시 자동실행되지만, 빠른 로드를 위해서는 앞에 작성해주는것이 좋다고 문서에 나와있다.

일단 간단하게 play,pause,forward,backward 메소드를 추가했다.
여기서 필요한 파일이 MPMediaItem이기 때문에, 기존의 Music 클래스의 file: MPMediaItem?이라는 멤버변수를 추가해주었다.

MusicFetcher에서 MPMediaFile 가져오기

viewController에서 곡 선택 시 play() 메소드 실행 추가

오류


이런 오류가 뜨면서 실행이 안된다.
print로 nowPlaying의 값을 출력하니 nil로 나왔다.
찾아보니 setQueue를 통해 queue설정을 한 뒤, 거기서 nowPlaying을 정해주어야 제대로 작동하는듯 했다.

MusicPlayer init에 setQueue 추가

결과


선택한 노래를 기준으로 재생이 된다!

이제 앱에서 남은 건 재생, 멈춤 버튼, 다음 이전 곡 버튼의 기능을 추가하는 것이다.
이후 현재 재생 상태가 일치한지 확인하여 버튼 모양 동기화하기, 컬러피커뷰를 추가하여 액센트 컬러 정하기 등의 자잘한 기능 추가가 남아있다.

profile
iOS 개발자가 되기 위한 스터디룸...

0개의 댓글