本机功能未找到实现

Sta*_*nko 11 java java-native-interface android android-ndk

问题: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)
Run Code Online (Sandbox Code Playgroud)

对于其他80%的应用程序完美运行,我的测试设备也不例外.无法弄清楚问题是什么.

EDIT1:库在启动画面上完美加载.这一点也不例外.

static { System.loadLibrary("my-lib"); }
Run Code Online (Sandbox Code Playgroud)

EDIT2:刚刚转载错误.这绝对是随机的.应用程序函数调用工作正常,并在某些时候开始失败.唯一的解决方法是重新安装应用程序.

Xav*_*ana 6

继我的评论和@ stanislav-parkhomenko的后来评论之后,我将其重新发布为答案。谢谢!

我的评论:

静态{...}块位于哪里?造成这种情况的可能原因可能是某些调用之前未执行代码。

后来自己确认这是原因:

问题出在库初始化中。由于共享功能,启动画面并不总是运行,这就是为什么有时库未加载的原因。

感谢Xavier Rubio Jansana的建议,这消除了我的失明。

很高兴它有所帮助!