Holen Sie sich die SQLite-Pfad in dem Ordner "Assets"
Bin ich eine Anwendung entwickeln, und ich habe in zwei Probleme hier:
-
Wie kann ich öffnen Sie eine SQLite-Datenbank gespeichert, die im Ordner "assets"? Welchen Pfad muss ich für den Zugriff auf den Ordner "assets" in meiner Bewerbung? Hier ist, was ich habe, so weit:
path = "file:///asset_folder/database.dat"; SQLiteDatabase db = null; db = SQLiteDatabase.openDatabase(path, null, SQLiteDatabase.OPEN_READONLY);
-
Wie kann ich kopieren Sie eine Datei in den internen Speicher (
/data/data/...
) während der installation meiner Anwendung oder während der ersten Ausführung? Ich möchte zum kopieren von einem Ordner in den assets-Ordner in den internen Speicher während der ersten Ausführung.
Anregungen würde sehr geschätzt werden.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem, also zog ich die db Datei in dem res/raw-Ordner zugegriffen und es so auf:
Dann habe ich versucht, verschieben Sie die Datei in den /data/data/com.mydomain.www/databases/den Ordner, aber ich würde eine Ausnahme, weil die Ziel-Pfad nicht vorhanden ist, so habe ich
File(destPath).getParentFile().mkdir();
Von dort aus rief ich eine Kopie der db-Methode zum übertragen der db an den Bestimmungsort.
InputStream ist die db-Datei Ausgabestrom ist der FileOutputStream(destPath).
Vom diese post fand ich diese tutorial. Es sagt Ihnen, wie Sie sich mit Datenbanken im Ordner "assets". Dass zumindest die Antworten auf Ihre erste Frage. Ich bin mir auch nicht sicher über Ihre zweite.
Kopieren der Datenbank aus dem assets Ordner in den data/data/database-Ordner Ihrer Anwendung.
Verwenden Sie folgenden code.