
프론트엔드
Android 오디오 경험을 향상시키는 필수 요소, Audio Focus
두줄요약
Android의 Audio Focus를 공유 오디오 자원으로 설명하며, 요청·반납과 상태 변화 대응이 필수라고 정리했습니다. 미처리 시 발생하는 소리 충돌 사례와 AOSP 코드로 동작을 확인하는 방법도 함께 소개했습니다.
핵심 내용
- Audio Focus를 Android 시스템의 공유 오디오 자원으로 보고, 요청·반납과 상태 변화 대응이 멀티미디어 앱의 필수 설계 요소라는 점 정리
- AudioManager, AudioFocusRequest, OnAudioFocusChangeListener로 포커스를 관리하는 흐름과 focusGain 종류별 의미 설명
- 포커스 미처리 시 소리 겹침, 통화 중 혼선, 안내 음성 충돌, 의도치 않은 녹음 등 사용자 경험 문제 사례 제시
- 요청 실패, 잘못된 설정, 포커스 누적, 특수 권한 앱과의 관계, 문서에 없는 동작은 AOSP 코드로 확인할 수 있다는 점 강조
적용해볼 점
- 오디오 재생·녹음 기능이 있다면 Audio Focus 요청과 반환 로직 점검
- 포커스 변경 콜백에서 재생 일시정지, 중단, ducking 처리 반영
- 문서로 अस्प한 동작은 Android 오픈소스 코드로 확인
