Android: SQLite-Transaktionen bei Verwendung von ContentResolver

Das Ziel: Datenbank aus XML-Daten aktualisieren

Der Prozess:

Starten Sie die TransaktionLöschen alle vorhandenen Zeilen aus den TabellenFür jedes Hauptelement von geparstem XMLeinfügen rudere in den Haupttisch und hole PKPro Kind des Hauptelementseinfügen Aufnahme in die 2. Tabelle mit FK aus dem vorherigen SchrittTransaktion festschreiben

Ziemlich normales Zeug, was DB-Operationen angeht. Das Problem ist, dass CRUD-Operationen nicht innerhalb von ausgeführt werdenContentProvider sondern mitContentResolver so sieht der einsatz zum beispiel ausresolver.insert(CONTENT_URI, contentValues). Die ContentResolver-API scheint nichts mit Transaktionen zu tun zu haben, und ich kann sie nicht verwendenbulkInsert da ich in 2 tabellen intermittierend einfüge (dazu möchte ich nochdelete auch innerhalb der Transaktion).

Ich dachte daran, meine angepassten zu registrierenContentProvider als Zuhörer mitregisterContentObserver aber seitContentResolver#acquireProvider Methoden sind versteckt Wie erhalte ich die richtige Referenz?

Habe ich kein glück

Antworten auf die Frage(4)

Ihre Antwort auf die Frage