Я использую SQLiteOpenHelper для чтения базы данных из активов.он работает на всех версиях Android, но Android p.
это моя функция copyDataBase:
private static void copyDataBase() throws IOException {
InputStream myInput = myContext.getAssets().open(DB_NAME);
String outFileName = DB_PATH + DB_NAME;
OutputStream myOutput = new FileOutputStream(outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer))>0){
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myOutput.close();
myInput.close();
SharedPreferences shData = myContext.getSharedPreferences("data", 0);
SharedPreferences.Editor editor = shData.edit();
editor.putBoolean("databaseIsOnMemory", true);
editor.commit();
}
я вставил журнал в эту функцию, и он прошел через это.но я получаю эту ошибку:
android.database.sqlite.SQLiteException: no such table: irancell (code 1 SQLITE_ERROR)
вот как я получаю данные:
c = myDataBase.query(true, Table_Name, new String[] {IDData,TextData},
null,null,null,null,null, null);
c.moveToFirst();
int i = 1;
while(!c.isAfterLast()){
list.add(new KharidBaste(c.getInt(0),c.getString(5)));
c.moveToNext();
i++;
}
и ошибка в строке: "c.moveToFirst ();"