首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在android上使用sqlcipher读取之前在pc上创建的加密数据库?

如何在android上使用sqlcipher读取之前在pc上创建的加密数据库?
EN

Stack Overflow用户
提问于 2012-03-13 08:51:17
回答 1查看 1.5K关注 0票数 3

我试图在我的PC上读取一个用sqlcipher创建的加密数据库,但我无法在我的应用程序上读取它。例如:

代码语言:javascript
运行
复制
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());

结果如下所示

代码语言:javascript
运行
复制
03-12 03:28:12.691: I/getS(9895): DATABASE = []
03-12 03:28:12.691: I/getS(9895): length = 0

还有这一点:

代码语言:javascript
运行
复制
Cursor c2 = database.query("my_table", new String[] { "name" }, null, null, null, null, "name");

返回到以下内容:

代码语言:javascript
运行
复制
03-12 03:28:12.701: I/Database(9895): sqlite returned: error code = 1, msg = no such table: my_table

我正在用sdk-7编译,如果我尝试相同的数据库,没有加密和sqlcipher,我没有任何问题。有人能教我如何在安卓上阅读电脑上加密的数据库吗?欣赏;)

EN

回答 1

Stack Overflow用户

发布于 2012-03-13 21:19:41

您将希望使用SQLCipher for Android库,该库将允许您访问和修改Android设备上的sqlcipher数据库。我们目前支持Android 2.1 - 4.0.3。可以在以下位置找到二进制文件下载:

https://github.com/sqlcipher/android-database-sqlcipher/downloads

可以在这里找到安卓系统的itegrating SQLCipher的教程:

http://sqlcipher.net/sqlcipher-for-android/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9676905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档