About this Project
使わなくなったスマートフォンを音楽プレイヤーとして再利用することを目的に開発しました。 フォルダを指定してMP3ファイルを再生でき、Android Autoにも対応しています。
設計・コード生成・デバッグまで、ほぼすべての工程をClaude Codeとの対話で進めました。 Android Autoのアートワーク表示やシャッフルボタンの不具合など、深い原因調査と修正もAIが主導して対応しています。 生成されたコードは人間がレビューし、実機で動作確認を行っています。
Video
Development Environment
- Kotlin
- Kotlin Coroutines
- AndroidX Media3 (ExoPlayer)
- Media3 MediaLibraryService
- androidx.car.app (Android Auto)
- Android SDK (API 26+)
Key Features
- フォルダ選択再生: フォルダを指定してMP3ファイルを一括再生できます。
- アルバムアート表示: 曲に埋め込まれたアルバムアートを画面に表示します。
- シャッフル再生: ランダムな順序で楽曲を再生できます。
- 検索機能: 曲名・アーティスト名・アルバム名で絞り込み検索ができます。
- バックグラウンド再生: アプリを閉じてもフォアグラウンドサービスで再生を継続します。
- Android Auto 対応: 車載ディスプレイから曲の操作ができます。
- スキャン結果のキャッシュ: 起動を素早く保ち、フォルダ変更時に自動で更新します。
Known Issues / Out of Scope
- Googleアシスタントの音声操作(「〇〇をかけて」): インテントフィルタの追加と受け取り処理は実装済みですが、アシスタントがどのアプリに再生を委譲するかはOS側の判断に依存します。 YouTube MusicやSpotifyが優先されることがあり、本アプリへの誘導を保証できないため、実質的な検証ができていません。
Resource
資料はGitHubで公開しています。個人の学習や小規模なプロジェクトでの再利用を歓迎します。
View on GitHub