SQLite的C接口庫我使用http://www.sqlite.org/c3ref/open.html作爲參考使用SQLite的下打開數據庫如何使用Android的
即時調用這樣
package com.example.offline;
public class NativeLib {
static {
System.loadLibrary("sqlite3");
}
public native int sqlite3_open(String filename,Object sqlite3);
}
由於文檔說
int sqlite3_open(
const char *filename, /* Database filename (UTF-8) */
sqlite3 **ppDb /* OUT: SQLite db handle */
);
logcat中的錯誤
12-12 14:49:15.645: W/dalvikvm(3265): No implementation found for native Lcom/example/offline/NativeLib;.sqlite3_open:(Ljava/lang/String;Ljava/lang/Object;)I
所以我的問題是可以在我們我們的Java
這裏創建sqlite的C對象是我的Android.mk文件
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := sqlite3
LOCAL_SRC_FILES := sqlite3.c
include $(BUILD_SHARED_LIBRARY)
感謝名單傢伙
C接口將無法正常工作,甚至不會暴露方法。暴露的SQLite接口封裝在[SQLiteDatabase](http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html)中。 –
你檢查了http://stackoverflow.com/questions/5523067/sqlite-with-android-ndk? –
爲什麼日誌說沒有找到本地方法12-12 16:50:48.980:E/AndroidRuntime(2094):java.lang.UnsatisfiedLinkError:未找到本機方法:com.shabdkosh.offline.NativeLib.sqlite3_open:(Ljava/lang/String; Ljava/lang/Object;)I – Gattsu