SQLCipher与Android。创作工作正常,选择+插入不行

时间:2012-07-16 14:45:22

标签: java android sqlite sqlcipher

下午好。

我正在使用以下代码在Android应用程序中创建加密数据库文件:

String dbPath = context.getDatabasePath(NAME_OF_MY_FILE).getPath();
SQLiteDatabase sampleDB = SQLiteDatabase.openOrCreateDatabase(dbPath, "password", null);

这样可以正常工作并创建文件,但在尝试访问此加密文件时,我会收到多个错误,例如:

没有这样的表TABLE_NAME和 文件已加密或不是数据库

我只是使用相同的代码打开文件进行编辑,因为该函数被称为openOrCreateDatabase()。我假设打开文件的过程与创建相反,并且您传递了原始密码?

请注意我使用了正确的导入:

import net.sqlcipher.database.SQLiteDatabase; 

并在SQLiteDatabase.loadLibs(this);方法中初始化onCreate()

如果有任何想法,有人可以指出我哪里出错。

谢谢!

2 个答案:

答案 0 :(得分:0)

致电SQLiteDatabase.openOrCreateDatabase后,您是在那里创建数据库架构,还是在创建net.sqlcipher.datdatabase.SQLiteOpenHelper的子级别来管理数据库迁移?没有它,你的表名就不存在了。也许你可以展示更多的代码来帮助诊断你所看到的问题。

答案 1 :(得分:0)

你只需要在该电话中传递“密码”。