2010-07-15 122 views
1

由於影響與Android < 2.2捆綁的動態庫的錯誤,我需要靜態鏈接3.6.2版本的SQLite與我的Android應用程序。我已經在我的開發機器上編譯並安裝了3.6.2,但我不確定如何將其鏈接到我的Android應用程序(使用Eclipse開發)。如何靜態鏈接sqlite到我的android應用程序?

我對構建和編譯選項並不熟悉,所以如果有人能夠一步一步地引導我,那將非常感激。

+1

您使用的是Java嗎? – Amy 2010-07-15 15:55:29

+0

是的。我的Android應用程序是用Java編寫的。 – user392907 2010-07-15 18:55:13

+0

您無法與Java靜態鏈接。 – Amy 2010-07-16 05:46:38

回答

1

SQLite使用Android NDK構建「開箱即用」。獲取NDK,使用你想要和構建的選項爲SQLite創建一個.mk文件。

+0

嗨,我運行ndk-build腳本時出現錯誤。我將sqlite3.c和sqlite3.h文件複製到我的項目的jni文件夾中,創建了一個簡單的.mk文件並運行了ndk-build。它返回關於一些未定義的引用的編譯錯誤。對不起,編譯時我是一個完整的noob。謝謝! – user392907 2010-07-20 22:37:01

+0

不知道你得到的錯誤,這裏很難迴應。 – NuSkooler 2010-07-29 17:27:36

+0

下面是我得到的: 編譯thumb:sqlite3 <= ###/eclipse/workspace/MyProject/jni/sqlite3.c ###/eclipse/workspace/MyProject/jni/sqlite3.c:在函數'unixDlError': ###/eclipse/workspace/MyProject/jni/sqlite3.c:26415:警告:賦值從指針目標類型丟棄限定符 SharedLibrary:libsqlite3.so ###/eclipse/workspace/MyProject/obj /local/armeabi/objs/sqlite3/sqlite3.o:在函數'unixDlSym'中: ###/eclipse/workspace/MyProject/jni/sqlite3.c:26442:未定義引用到'dlsym' – user392907 2010-08-12 22:31:41

1

另一個選擇是將二進制文件添加到資產,然後解壓縮到/ data/data /並從那裏執行它。

相關問題