我正在使用 Jenkins在 AWS Device Farm 上运行测试构建后操作在 Device Farm 中的设备中运行 Espresso Android Instrumentation 测试。该应用程序使用原生 JNI 库从 JPEGS 中创建 TIFF 图像。
然而,一旦执行原生函数的代码被执行,应用程序就会崩溃。即使我只是在 Device Farm 中的一台设备上运行应用程序,当我单击调用本机 JNI 函数的按钮时,应用程序也会崩溃。
我在日志中收到以下错误:原因:java.lang.UnsatisfiedLinkError:dlopen 失败:找不到“libtiff.so”引用的符号“rand”...
在初始化事物时,还可以在较早的时间点获取与 JNI 相关的日志
- 在 libnativehelper.so 中找不到 JNI_OnLoad 0x0 跳过初始化
- 试图加载lib libjavacore.so 0x0
- CheckJNI 关闭
我想知道 AWS Device Farm 中是否默认禁用 JNI 库加载。如果是,有没有办法启用它们。如果默认支持 JNI 库,有人可以指出正确的方向,以便我解决这个问题。