라디오 앱 만들기

🕒 읽는 데 0분 예상
forest_articles
forest_날짜
forest_분류
문서
국내 라디오는 인터넷에서 청취하기 위해서는 각 방송사의 앱을 각각 설치해주어야 스트리밍할 수 있는 경우가 많습니다. 물론 자체 앱에서만 제공하는 실시간 댓글이나 보이는 라디오 등과 같은 기능 때문이기도 하겠지만, 단순히 라디오를 듣고자 하는 사용자 입장에서는 불편함이 있는 것이 사실입니다. 따라서 국내 라디오 방송국의 스트리밍 프로토콜을 모아 재생할 수 있는 서비스를 만들고자 하였습니다.

주요 기능

  • 파편화된 라디오 앱을 방송사별로 설치하지 않아도 앱 하나로 주요 라디오를 모두 청취할 수 있습니다.
  • 라디오 감상에 집중할 수 있도록, 필요한 기능만 담아 감성적이고 깔끔한 디자인의 플레이어를 완성했습니다. 현재 방송 중인 프로그램명과 선곡 정보도 확인해보세요.
  • 즐겨찾기 기능 구현: 자주 듣는 스테이션은 하트 버튼을 눌러 자주 듣는 리스트에 추가해보세요. 자주 듣는 스테이션만 바로 모아볼 수 있습니다.<br/><br/
  • 종료 타이머 구현: 라디오를 틀어놓고 잠들어도 걱정 없도록, 플레이어에서🌙 아이콘을 눌러 종료 타이머를 설정할 수 있습니다. 정해진 시간에 재생중인 라디오가 알아서 종료됩니다.
  • 글자 크기 조절 기능: 사용 연령대가 높다는 것을 확인한 후 UI 요소의 크기를 조절할 수 있는 옵션을 추가하였습니다.

사용 기술

  • NextJS 14: 지역/방송사별로 정보를 정리한 JSON 파일을 만들고, 각 방송사별 트리밍 프로토콜을 가져오기 위해 API Routes를 만들어 사용했습니다.
  • Supabase Database: 각 스테이션 별 누적 청취자 수를 집계하여 표시하는 기능을 구현하였습니다.
  • Kotlin(+XML): 웹뷰와 통신하기 위해 Bridge를 사용하여 웹페이지와 안드로이드 앱의 함수를 서로 호출할 수 있도록 구현하였습니다.
  • Media3 API: 미디어 백그라운드 재생을 위해 안드로이드의 Media3 (ExoPlayer) API를 사용하였습니다.
  • CountDownTimer API: 종료 타이머를 구현하기 위해 CountDownTimer API를 사용했습니다.

연관 포스팅

 

댓글 0