AWS Device Farm + Espresso:在AWS Device Farm

时间:2017-06-13 11:28:27

标签: java android jenkins android-espresso aws-device-farm

我正在使用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跳过init
  • 尝试加载lib libjavacore.so 0x0
  • CheckJNI关闭

我想知道在AWS Device Farm中是否默认禁用了JNI库加载。如果是,是否有办法启用它们。如果默认支持JNI库,有人可以指出我正确的方向,以便我可以解决这个问题。

1 个答案:

答案 0 :(得分:0)

我在AWS Device Farm团队工作。

  1. Device Farm上未禁用JNI库加载。
  2. 可能导致问题的一个潜在原因可能是我们在上传时将应用程序撤销,这可能会破坏Google地图等内容。请参阅常见问题“你修改我的应用吗?” https://aws.amazon.com/device-farm/faq/
  3. 还要确保您能够在本地设备上加载此应用并成功启动它。这将为您提供比较的基线。

    希望有所帮助。