【问题标题】:How do I statically link sqlite to my android application?如何将 sqlite 静态链接到我的 android 应用程序?
【发布时间】:2010-07-15 15:42:32
【问题描述】:

由于存在影响与 Android

我不熟悉构建和编译选项,所以如果有人可以逐步指导我,将不胜感激。

【问题讨论】:

  • 是的。我的 Android 应用是 Java 语言。
  • 您不能使用 Java 进行静态链接。

标签: android eclipse sqlite static-linking


【解决方案1】:

SQLite 使用 Android NDK 构建“开箱即用”。获取 NDK,为 SQLite 创建一个 .mk 文件,其中包含您想要的选项并构建。

【讨论】:

  • 您好,我在运行 ndk-build 脚本时遇到错误。我将 sqlite3.c 和 sqlite3.h 文件复制到我项目的 jni 文件夹中,创建了一个简单的 .mk 文件并运行 ndk-build。它返回有关一些未定义引用的编译错误。抱歉,在编译方面我完全是个菜鸟。谢谢!
  • 在不知道您遇到的错误的情况下,很难在这里回复。
  • 这就是我得到的:编译拇指:sqlite3 unixDlSym': ###/eclipse/workspace/MyProject/jni/sqlite3.c:26442: undefined reference to dlsym'
  • 看来您需要在 libdl 中进行链接。例如。在您的 LOCAL_LDLIBS 中: LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -ldl
【解决方案2】:

另一种选择是将二进制文件添加到资产中,然后解压缩到 /data/data/ 并从那里执行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-29
    • 2014-07-29
    • 2012-03-09
    • 1970-01-01
    相关资源
    最近更新 更多