String gaanaDB = "/data/data/com.xyz/databases/DB";
String converterDB = "/data/data/com.abc/databases/DB";
Runtime.getRuntime().exec("su");
Runtime.getRuntime().exec("busybox cp -f " + gaanaDB + " " + converterDB);
DBhelper.javaОшибка копирования файлов базы данных
package com.aks.gaanaconverter.util;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "GaanaDB";
private static final String TABLE_NAME = "table_track_metadata";
private static final String ID = "track_id";
private static final String NAME = "track_name";
private static final String HAS_DOWNLOADED = "has_downloaded";
private static final int HAS_DOWNLOADED_VALUE = 1;
public DBHelper(Context context) {
super(context, DATABASE_NAME, null, 6);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase arg0) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
public Cursor getData() {
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery("select " + ID + "," + NAME + " from "
+ TABLE_NAME/*
* +" where "+HAS_DOWNLOADED+"="+HAS_DOWNLOADED_VALUE
*/, null);
return res;
}
}
, когда я пытаюсь получить доступ к базе данных он не проливает такой таблицы найдено.
Я пробовал команду в приложении Shell Commander, он отлично работает. Но когда я пытаюсь использовать его в своем приложении, он не копирует таблицы в базу данных.
Укорененный Kitkat и BusyBox установлены.
Можете ли вы опубликовать выход или ошибку вы получаете? –
это ошибка: android.database.sqlite.SQLiteException: нет такой таблицы: table_track_metadata (код 1): при компиляции: выберите track_id, track_name из table_track_metadata – aks