【发布时间】:2017-02-10 08:37:04
【问题描述】:
问题:20% 的用户正在接收:
Fatal Exception: java.lang.UnsatisfiedLinkError
No implementation found for java.lang.String com.example.utils.API.getHashString(android.content.Context) (tried Java_com_example_utils_API_getHashString and Java_com_example_utils_API_getHashString__Landroid_content_Context_2)
对于其他 80% 的应用程序运行良好,在我的测试设备上也不例外。 不知道是什么问题。
EDIT1: 库在启动画面上完美加载。在这一点上也不例外。
static { System.loadLibrary("my-lib"); }
EDIT2: 刚刚重现了错误。这绝对是随机的。应用程序函数调用工作正常,有时它开始失败。唯一的解决方法是重新安装应用程序。
【问题讨论】:
-
尝试从静态构造函数中调用有问题的方法。它在相同的设备上会失败吗?
-
你的意思是静态块吗?我想尝试,但我无法在真实用户的生产环境中测试所有解决方案。
-
也许您可以使用firebase.google.com/docs/test-lab - 他们的免费套餐可能足以为您提供必要的输入。
-
看起来您正在使用本机代码并且对应于库。您是否为所有平台编译过这个?像 arm64、armv7、mips、intel 等可能有 20% 的用户属于不受支持的平台
-
static {...}块在哪里?造成这种情况的一个可能原因是代码在某些调用之前没有执行。
标签: java android android-ndk java-native-interface