[英]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)文件夹,在里面我移动了文件夹armeabi 、 armeabi-v7a和x86 。
然后我将 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.