android - libiconv.so : has text relocations

标签 android shared-libraries android-6.0-marshmallow unsatisfiedlinkerror

我的应用旨在在 android 6 上运行,据我所知,它不允许加载共享库。

有没有人遇到过这个问题并且能够成功解决?

java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/com.XXX.XXX-2/lib/arm/libiconv.so: has text relocations

最佳答案

Android 6 不再支持共享对象的动态链接。静态链接仍然有效。但是,您的问题与此无关。

由于文本重定位,库甚至没有加载。

这是由于 Android NDK 中的一个旧错误,早在 2012 年。谷歌认为它可以用 Lollipop 解决,然后忽略了用户警告说它不是。该错误在后来的 NDK 中重新出现,所有 API 版本 >=22 都被视为已损坏。现在,带有文本重定位的应用程序没有解决问题,而是被简单地禁止部署。

第一份报告: https://code.google.com/p/android/issues/detail?id=23203

为避免此问题,请尝试使用 API 21 编译您的应用。请参阅您的 IDE 文档以了解如何针对各种操作系统版本。

关于android - libiconv.so : has text relocations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37360464/

相关文章:

android - 修复圆形 ViewPager 的动画

shared-libraries - 加载共享库时出错

c++ - "/usr/lib/libstdc .so.6: version ` GLIBCXX_3.4.1 5' not found"是什么意思,我该如何解决?

Android - 空闲时允许重复闹钟

android - E/libEGL : validate_display:255 error 3008 (EGL_BAD_DISPLAY) on Nexus 9 + Android 6

android - 在 TextView 中使用矢量图像 Left drawable 导致强制关闭?

Android: Drawablebottom 隐藏文字

android - 如何在android中使用 'Dropbox API'进行流媒体视频?

在 SharedLibrary 中创建线程会引发段错误

android - 检查哪些代码使用权限