База данных SQLIte - это на самом деле просто файл, сохраненный в памяти телефона, который вы можете скопировать на SD-карту вашего телефона и затем легко получить к нему доступ со своего ПК.Ниже приведена функция, которая делает именно то, что вам нужно.Просто убедитесь, что изменили имя вашего пакета и имя базы данных перед использованием функции.
public static void backupDatabase() throws IOException {
//Open your local db as the input stream
String inFileName = "/data/data/your.package.name/databases/database.sqlite";
File dbFile = new File(inFileName);
FileInputStream fis = new FileInputStream(dbFile);
String outFileName = Environment.getExternalStorageDirectory()
+ "/database.sqlite";
//Open the empty db as the output stream
OutputStream output = new FileOutputStream(outFileName);
//transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer))>0){
output.write(buffer, 0, length);
}
//Close the streams
output.flush();
output.close();
fis.close();
}
Как видно из кода, база данных всегда хранится в папке:
/data/data/your.package.name/databases/
Имя (в нашем примере "database.sqlite") - это то, что вы выбралипри расширении SQLiteOpenHelper.Очевидно, вам также необходимо заменить «your.package.name» на имя пакета вашего приложения.