чтобы добавить UDF в SQLlite/Android Как загрузить расширения в SQLite? первое sqlite3_enable_load_extension должно быть выполнено, чтобы предотвратить «несанкционированный доступ», который я сделал в myfunc.c
#include <sqlite3.h>
#include <jni.h>
#include <stdlib.h>
jstring
Java_com_test_abc_SQLiteOpenHelper_enableExtension(JNIEnv* env, jobject thiz, sqlite3 *db)
{
sqlite3_enable_load_extension(db, 1); //errorline, without any infos
return (*env)->NewStringUTF(env, "enableExtension done");
}
Ява
package com.test.abc;
....
public class MyOpenHelper extends SQLiteOpenHelper {
...
@Override
public void onOpen(SQLiteDatabase db) {
super.onOpen(db);
enableExtension(db);
}
public native String enableExtension(SQLiteDatabase db);
}
безуспешно. Вызов JNI с Java на C никогда не возвращается, без ошибок он работает. Кто-нибудь знает, что здесь происходит не так? Лучше всего с примером кода.