Shuttle2
Shuttle2 copied to clipboard
iTunes/Apple Music sync
…nc (Phase 1)
Implements Phase 1 of iTunes/Apple Music sync functionality as requested in issue #107.
Database Changes:
- Add rating column (0-5 stars) to songs table
- Create database migration MIGRATION_40_41
- Update MediaDatabase version to 41
Rating Support:
- Add rating field to Song model and SongData entity
- Implement SongRepository.setRating() for updating ratings
- Add updateRating() method to SongDataDao
- Display ratings in Song Info dialog with star visualization
MediaStore Integration:
- Import existing ratings from Android MediaStore
- Convert MediaStore ratings (0-100) to 0-5 star scale
- Automatic import during media scanning
Playlist Export:
- Create PlaylistExporter utility class
- Support M3U/M3U8 format export
- Generate iTunes-compatible playlist files
- Support absolute and relative file paths
Documentation:
- Add ITUNES_SYNC_IMPLEMENTATION.md with complete implementation details
- Document future phases for full iTunes sync support
- Include API reference and testing recommendations
This implementation provides the foundation for iTunes/Apple Music synchronization. Future phases will add rating edit UI, playlist export UI, and desktop sync application.
Addresses: #107