Szenario: Habe verschlüsselte mp3-Dateien in meiner .apk. Muss entschlüsseln und an das MediaPlayer-Objekt senden.
Problem: Nachdem ich die Dateien gelesen und entschlüsselt habe, wie bekomme ich MediaPlayer dazu, sie abzuspielen?
Jetzt hat MediaPlayer 4 Versionen von setDataSource().
setDataSource(String path)
setDataSource(FileDescriptor fd)
setDataSource(FileDescriptor fd, long offset, long length)
setDataSource(Context context, Uri uri)
Keines davon ist ideal für die Situation. Ideal wäre wohl, MediaPlayer einen InputStream zu geben?
Mögliche Lösungen:
- Schreibe entschlüsselte Daten in eine Datei und spiele die Datei ab. Viel IO-Aufwand.
- Erstellen Sie einen Dummy-HTTP-Server (ServerSocket?) und geben Sie die URL an MediaPlayer weiter. Wiederum unübersichtlich. Bin ich überhaupt berechtigt, einen Socket zu erstellen?
Hat jemand eine bessere Lösung?