hilu0318 / Repeater

0 stars 0 forks source link

개발을 위해 구현해야할 로직 기능들 정리. #1

Open hilu0318 opened 3 years ago

hilu0318 commented 3 years ago

** 필수 구현 기능

  1. 음악앱 라이브러리 접근. (Picker를 통해서 음악 선택하기.)
    • Controller에 MPMediaPickerControllerDelegate 추가.
  1. 음악앱 음원 재생하기.
  2. 구간반복 등 곡에대한 재생정보 메타데이터를 기록하도록 단말에 파일 쓰기 및 읽기.(파일관리)
hilu0318 commented 3 years ago

다시 정리.

  1. 음악 앱 라이브러리 접근

    • 처리 : MPMediaPickerController 사용
  2. 현재 실행중인 앱에서 음악 재생 및 컨트롤

    • Music App Library -> MPMusicPlayerApplicationController : 앱에서 컨트롤됨
    • Music App Library -> MPMusicPlayerController.systemMusicPlayer : 시스템 음악 플레이어(음악 앱)로 컨트롤됨. Local File 읽는방법?? 몰라(없는것 같은데...).
    • Local Music File -> AVAudioPlayer : 앱에서 컨트롤. 뭔가 세세한 컨트롤이 가능한걸로 보임. ** 숙제. 현재로써는 Music App Library와 Local Music File의 플레이어를 각각 다른 클래스를 사용해야하는걸로 보임. 근데 두가지 클래스에서 제공하는 기능이 많이 차이가 나는걸로 보여서...Music App Library를 AVAudioPlayer에서 재생하는 방법을 찾아봐야 할 듯. 우선순위는 아님.
  3. 재생 시 슬라이더 바 이동 및 임의 이동 시 해당 구간부터 재생실행

    • 기본적으로 재생바 이동은 다른것과 동일하게 구현.(MaxValue 설정, 기본값 설정, Item 선태되지 않았을 경우 비활성화, Timer시작과 함께 selector에서 실시간 슬라이드바 이동 처리)
    • 문제는 슬라이더를 이동시키기 위해 슬라이더바 터치 시 실시간 슬라이드바 이동을 해제하고, 이동 후 터치를 끝낸 위치부터 재생하면서 바로 슬라이드바 이동 시작. 1) 터치 시 이벤트 : Touch Down 2) 터치에서 손을 떌 시 이벤트 : Touch Up Inside