Android: so erkennen Sie eine Veränderung im MediaStore, wenn die Verbindung über MTP
Ich habe große Probleme mit MediaStore. Ich brauche, um Ereignisse zu behandeln, wenn MediaStore geändert wird über MTP. Ich habe bereits einen receiver für android.intent.action.MEDIA_SCANNER_FINISHED
Aktion, aber es ist nur nützlich für Universal Mass Storage(UMS). Der scanner wird nicht gestartet, über MTP, weil die MTP-Veränderungen der MediaStore-Datenbank direkt.
Bitte würden Sie so freundlich sein und mir helfen zu erkennen, wie diese Ereignisse. Vielen Dank für jede Hilfe!!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich endlich eine Lösung gefunden. Ich habe versucht, FileObserver aber wenn Sie verwenden es für alle Verzeichnisse...es ist ziemlich Speicher. So jetzt bin ich mit ContentObserver und es funktioniert gut:
Die Flagge mRunning hat, dort zu sein für einige Grund, weil onChange war manchmal genannt wird, auch wenn unregisterContentObserver() wurde aufgerufen, bevor.
Diesem code, den ich bin mit mit Uris, die ich beachten will, D. H. MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, ...
Erstellen Sie ein content-Beobachter-Klasse
Registrieren die Beobachter in Ihrer Aktivität
Vergessen Sie nicht, um die Registrierung der Beobachter in der onDestroy () - Funktion