繁体   English   中英

在android studio项目中添加Sqlite4java

[英]adding Sqlite4java in android studio project

我需要检索受 android 原生 sqlite 支持中的 Cursor limit(1 Mb) 限制的较大图像。

我正在尝试在我的 android studio 项目中使用 sqlite4java,但在加载本机库时遇到了问题。

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

在此处输入图片说明

    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?

我终于找到了解决方案。

我创建了一个lib (不是 libs)文件夹,在里面我移动了文件夹armeabiarmeabi-v7ax86

然后我将 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 文件夹。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM