FLO MusicPlayer 앱에서 사용하는 AVPlayer는 음악을 재생시키고, 컨트롤를 하는 핵심 요소로 사용된다. AVPlayer를 어떻게 사용했는지 알아보자 먼저, iOS의 프레임워크들에서 자주 사용했던 자연스럽게 delegate를 채택하려고 했지만, delegate가 AVPlayer에는 없다. 대신, KVO(Key-Value-Observing) 방식으로 AVPlayer의 상태값을 받아올 수 있다. KVO는 존재만 알고 있었던지라, 이번 기회에 공부를 해보았다. KVO 짧은 정리 KVO는 NSObject의 기능으로 willSet, didSet 과 유사하다고 볼 수 있음 프로퍼티의 상태 변화에 대해 '외부' 에서 옵저버를 추가할 수 있음 (willSet, didSet은 내부에서 추가 필요) 외부에서..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bQg5NI/btsyqvfWb92/nGJ2EUrFkOmglhIYK7Kak0/img.png)
그동안 궁금했었던 부분들에 대해 공부하는 시간을 가져보던 중 평소 관심있었던 부분인 뮤직 플레이어를 만들어 보고 싶었다. FLO의 플레이어 뷰를 보면 기능 요구사항은 다음과 같다. - 플레이어 컨트롤 버튼 - 시간에 따른 가사 자동 스크롤 - 가사를 탭 했을 때 해당 부분으로 이동 - 음악 정보(이미지, 곡 정보 등) 사용한 프레임워크와 앱의 구조를 살펴보자 1. AVFoundation AVFoundation은 [ CoreAudio / CoreVideo / CoreMedia / CoreAnimation ] 위에 있는 프레임워크다. Core 패밀리들은 iOS 혹은 MacOS 등에서 하드웨어와 함께 Low-Level 로 동작하는 프레임워크들이고(C 기반), AVFoundation은 Core 패밀리 위에서 멀..
- Total
- Today
- Yesterday
- 2024년
- SwiftUI
- avplayer
- retry
- watchOS
- Xcode
- 애플워치 데이터 전송
- locale
- keyboardtype
- AVFoundation
- watch connectivity
- 소수점
- IOS
- flo
- DateFormatter
- auth
- swift날짜
- open-api-generator
- 토큰
- Xcode15
- KVO
- Swift
- 회고
- easy cue
- demical
- musicplayer
- openapi-generator
- 애플워치
- TextField
- OAS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |