Android Fabric分布式调试构建:java.lang.UnsatisfiedLinkError
我的Android应用程序中有一些本机代码,可以在我的设备(三星Galaxy S3)上完美运行。我已经创建了一个调试构建并签署了它,将APK发送给我的朋友进行测试。该应用程序是在他的设备(Sony Xperia Z3 Compact)上启动的,在第一次调用本机组件时,它崩溃了。在Fabric中,我看到以下堆栈跟踪:Android Fabric分布式调试构建:java.lang.UnsatisfiedLinkError,android,android-ndk,native,dynamic-linking,Android,Android Ndk,Native,Dynamic Linking,我的Android应用程序中有一些本机代码,可以在我的设备(三星Galaxy S3)上完美运行。我已经创建了一个调试构建并签署了它,将APK发送给我的朋友进行测试。该应用程序是在他的设备(Sony Xperia Z3 Compact)上启动的,在第一次调用本机组件时,它崩溃了。在Fabric中,我看到以下堆栈跟踪: Fatal Exception: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__aea
Fatal Exception: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__aeabi_memclr" referenced by "/data/app/com.myapp.myapp-1/lib/arm/libmyAppNative.so"...
at java.lang.Runtime.loadLibrary(Runtime.java:372)
at java.lang.System.loadLibrary(System.java:1076)
at com.myapp.system.Native.<clinit>(Native.java:9)
...
致命异常:java.lang.UnsatisfiedLinkError:dlopen失败:找不到“/data/app/com.myapp.myapp-1/lib/arm/libmyAppNative.so”引用的符号“\uuuuuu aeabi\u memclr”。。。
位于java.lang.Runtime.loadLibrary(Runtime.java:372)
位于java.lang.System.loadLibrary(System.java:1076)
位于com.myapp.system.Native。(Native.java:9)
...
为什么本机组件无法在Fabric上以相同的风格(调试)在他的设备上运行,而在我的设备上却运行得很好?部分原因在于当时的链接问题 这里的答案是,问题只发生在SDK版本24上,这在我的情况下是不正确的。SDK版本25的问题仍然存在
我通过返回SDK版本23解决了这个问题。然而,这个问题仍然没有得到解决,谷歌方面也有一个问题,就是要尽快解决这个问题。这可能与我看过的这个问题@Bobbake4类似。这实际上是相同的错误,但答案告诉我们,它会随着更新和SDK 24而消失,但我的版本甚至比他们的Android Studio和SDK都高,但我仍然有问题。