android - Android 不包括本机库
问题描述
尝试包含一些显然没有与 APK 打包的依赖项;不确定是否需要进行 CMake 构建或缺少某些配置以包含该库;在日志中看到以下错误:
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/com.google.android.things.jar", zip file "/data/app/test-piauOz_7FY6SycVXNeMRVA==/base.apk"],nativeLibraryDirectories=[/data/app/test-piauOz_7FY6SycVXNeMRVA==/lib/arm, /system/lib, /vendor/lib]]] couldn't find "libjavaupm_st7735.so"
具有以下依赖项:
compileOnly 'com.google.android.things:androidthings:+'
implementation 'io.mraa.at:mraa:1.9.0'
implementation 'io.mraa.at.upm:upm_zfm20:1.3.0'
implementation 'io.mraa.at.upm:upm_st7735:1.6.0'
在此处找到有关依赖项的更多信息:http: //iotdk.intel.com/docs/master/upm/java/building.html
解决方案
如果.so
文件不是为您正在构建的架构编译的,那么它们将not
被添加到 apk,这将导致调用时出现运行时错误 System.loadLibrary
。
推荐阅读
- python - 如何降低时间复杂度?
- android - 如何在android中使用背景图像制作透明布局?
- sql-server - 表连接总和不正确
- html - 如何更改特定字符的颜色 [jQuery/RegEx]
- mongodb - 如何提高此 MongoDB 查询的性能
- android - EdgeLight:屏幕边框不会超出反应原生的缺口和软键
- jquery - 使用 AJAX 从 HTML 表中插入大量行的最佳方法
- python - 显示具有自定义颜色的数组
- .net - 长时间运行的 SQL Server 报告,如何在异步模式下运行它们
- regex - 正则表达式与 ${} 内允许的句点精确匹配一个 alpha 字符串