sqlcipher で作成した暗号化データベースを PC で読み込もうとしていますが、アプリで読み込めません。例えば:
Cursor c = database.rawQuery("SELECT name FROM sqlite_master WHERE type='table'", null);
c.moveToFirst();
do {
String s = c.getString(0);
if (s.equals("android_metadata")) {
// System.out.println("Get Metadata");
continue;
} else {
dirArray.add(s);
}
} while (c.moveToNext());
Log.i("getS", "DATABASE = " + dirArray.toString());
Log.i("getS", "length = " + dirArray.size());
次の結果
03-12 03:28:12.691: I/getS(9895): DATABASE = []
03-12 03:28:12.691: I/getS(9895): length = 0
これも:
Cursor c2 = database.query("my_table", new String[] { "name" }, null, null, null, null, "name");
これに戻ります:
03-12 03:28:12.701: I/Database(9895): sqlite returned: error code = 1, msg = no such table: my_table
私は sdk-7 でコンパイルしています。同じデータベースを暗号化せずに sqlcipher なしで試しても、問題はありません。コンピューターで暗号化されたデータベースをアンドロイドで読み取る方法を誰か教えてもらえますか? 感謝 ;)