Skip to content

feat: Sync Netease Cloud playlists to app playlists system#1182

Merged
theovilardo merged 1 commit intotheovilardo:masterfrom
serein-213:feature/netease-playlist-sync
Feb 21, 2026
Merged

feat: Sync Netease Cloud playlists to app playlists system#1182
theovilardo merged 1 commit intotheovilardo:masterfrom
serein-213:feature/netease-playlist-sync

Conversation

@serein-213
Copy link
Copy Markdown
Contributor

Feature Description

Integrate Netease Cloud playlists with the app's playlist system, automatically syncing user playlists to application playlists.

Problem Statement

Previously, Netease Cloud playlist songs were imported into the unified music library, but the playlist organizational structure was not preserved. Users could not view or manage Netease Cloud playlists within the Playlists tab.

Solution

  • Automatically create corresponding app Playlist objects when syncing Netease Cloud playlists
  • Real-time content synchronization: song lists, playlist names, and metadata remain consistent
  • Delete corresponding app playlists when Netease playlists are removed
  • Clean up all associated app playlists when user logs out

Technical Details

  • Injected UserPreferencesRepository into NeteaseRepository
  • Added NETEASE_PLAYLIST_PREFIX constant to identify app playlists corresponding to Netease playlists
  • Three new private methods:
    • updateAppPlaylistForNeteasePlaylist(): Creates or updates app playlists
    • deleteAppPlaylistForNeteasePlaylist(): Deletes app playlists
    • getAppPlaylistIdForNetease(): Generates app playlist IDs
  • Modified sync logic in syncPlaylistSongs(), syncUserPlaylists(), and logout() to invoke these methods

User Experience Improvements

✅ All Netease Cloud playlists now appear in the Playlists tab
✅ Playlist names and song lists are automatically kept in sync
✅ Full support for existing playlist features (sorting, editing, etc.)
✅ Seamless UI integration without requiring additional user actions

Checklist

  • Code follows project style guidelines
  • Added necessary logging
  • Code compiles successfully
  • Backward compatibility considered

@theovilardo theovilardo merged commit bf2e091 into theovilardo:master Feb 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants