在android studio项目中添加Sqlite4java

时间:2015-03-13 20:54:24

标签: java android sqlite android-studio

我需要检索更大的图像,这些图像受到android原生sqlite支持中光标限制(1 Mb)的限制。

我正在尝试在我的android工作室项目中使用sqlite4java,但我正面临加载本机库的问题。

我的项目库(C:\ Users \ admin \ AndroidStudioProjects \ appname \ libs)文件夹包含以下文件:

enter image description here

    armeabi\libsqlite4java-android-armv5tejl.so
    armeabi-v7a\libsqlite4java-android-armv7l.so
    x86\libsqlite4java-android-i686.so
    libsqlite4java-linux-amd64.so
    libsqlite4java-linux-i386.so
    libsqlite4java-osx.dylib
    sqlite4java.jar
    sqlite4java-docs.zip
    sqlite4java-src.zip
    sqlite4java-win32-x64.dll
    sqlite4java-win32-x86.dll

当我在终端上运行命令“java -jar sqlite4java.jar”时:

我收到错误:

错误:无法访问jarfile sqlite4java.jar

尽管如此,我可以在我的代码中使用这些类;但是当我尝试打开数据库连接时,我得到了异常:

com.almworks.sqlite4java.SQLiteException:[ - 91]无法加载库:java.lang.UnsatisfiedLinkError:dalvik.system.PathClassLoader [DexPathList [[zip file“/data/app/diary.appname-2 /base.apk"],nativeLibraryDirectories=[/vendor/lib,/system/lib]]]找不到“libsqlite4java-android-armv7l.so”

“libsqlite4java-android-armv7l.so”已存在于“libs \ armeabi-v7a”文件夹中。

在项目中如何使用sqlite4java?

1 个答案:

答案 0 :(得分:2)

我终于找到了解决方案。

我创建了一个 lib (不是libs)文件夹,在其中我移动了文件夹 armeabi armeabi-v7a 86 即可。

然后将lib文件夹压缩到lib.zip中,将其重命名为armeabi.lib并将其转换为.jar

这是我放入的 我的项目库(C:\ Users \ admin \ AndroidStudioProjects \ appname \ libs)文件夹:

    armeabi.jar
    libsqlite4java-linux-amd64.so
    libsqlite4java-linux-i386.so
    libsqlite4java-osx.dylib
    sqlite4java.jar
    sqlite4java-docs.zip
    sqlite4java-src.zip
    sqlite4java-win32-x64.dll
    sqlite4java-win32-x86.dll

armeabi.jar有lib文件夹。