  1. Deezer App anlegen: https://developers.deezer.com/myapps → Redirect URI http://localhost:8080/auth/callback
  2. Backend starten:
  cd libredeck-web
  DEEZER_APP_ID=xxx DEEZER_APP_SECRET=yyy mvn spring-boot:run
  3. Android: In app/build.gradle die BACKEND_URL anpassen, dann in Android Studio öffnen und builden
  4. Gradle Wrapper fehlt noch im Android-Projekt — entweder gradle wrapper ausführen oder aus linkster-android kopieren
  
  
    Was gebaut:                                                                                                                                                                                                                                                                                                                 
                                                                                                                                                                                                                                                                                                                              
  7 neue Backend-Dateien:                                                                                                                                                                                                                                                                                                     
  - AppleMusicConfig – Properties: apple.music.team-id, apple.music.key-id, apple.music.private-key                                                                                                                                                                                                                           
  - AppleMusicTokenGenerator – erzeugt und cached den Developer-JWT (ES256, standard Java-Crypto, keine neuen Deps)                                                                                                                                                                                                           
  - AppleMusicTokenStore – Session-scoped Storage für den Music User Token (wie bei Spotify/Tidal)                                                                                                                                                                                                                            
  - AppleMusicApiClient – HTTP-Client gegen api.music.apple.com; unterstützt Catalog- und Library-Playlists, ThreadLocal-Token-Pinning für async Jobs                                                                                                                                                                         
  - AppleMusicProvider – implementiert StreamingProvider, wird automatisch im Registry registriert                                                                                                                                                                                                                            
  - AppleMusicAuthRequiredException                                                                                                                                                                                                                                                                                           
  - AppleMusicController – Endpunkte: /apple/configured, /apple/connected, /apple/developer-token, /apple/token, /apple/disconnect, /apple/playlists                                                                                                                                                                          
                                                                                                                                                                                                                                                                                                                              
  Geändert:                                                                                                                                                                                                                                                                                                                   
  - GenerateController – Apple Music Auth-Check (nur für Library-Playlists) + Token-Pinning                                                                                                                                                                                                                                   
  - index.html – 4. Service "Apple Music" im Switcher, MusicKit JS v3 Auth-Flow, Playlist-Picker                                                                                                                                                                                                                              
                                                            
  Konfiguration (in .env eintragen):                                                                                                                                                                                                                                                                                          
  APPLE_MUSIC_TEAM_ID=XXXXXXXXXX                            
  APPLE_MUSIC_KEY_ID=XXXXXXXXXX                                                                                                                                                                                                                                                                                               
  APPLE_MUSIC_PRIVATE_KEY=-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----                                                                                                                                                                                                                                         
  Benötigt wird ein MusicKit-Key aus dem Apple Developer Portal. Ist nichts konfiguriert, bleibt das Panel sichtbar aber zeigt "nicht konfiguriert".

