您的位置:首页 > 移动开发 > Android开发

关于 targetSdkVersion=23 底层动态库报错: has text relocations

2017-03-10 14:06 323 查看
从 API 23 开始,共享对象将不得包含文本重定位。也就是说,代码必须按原样加载,不得对其进行修改。

问题就是:当android studio的targetSdkVersion = 23时,之前能用的动态库在代用的时候会报错,错误信息包含has text relocations ....

官方给出的解决方案:wiki.gentoo.org/wiki/Hardened/Textrels_Guide

其实看了看,出现这个问题是因为加入了汇编优化造成的(简单猜测),于是试了下将之前报错的so中的 enable-asm设置成disable重新编译动态库,然后就可以了。

所以,给出一个简单的,暂时的解决方案:

将so中的asm关闭,重新编译动态库,试一试,说不定就可以用了?

如果怕关闭汇编优化降低效率,那只能看着官方给出的方案去修改汇编的代码了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息