1.项目中遇到一个ijkplayer不兼容v8a架构的android手机版本问题
主要报错 Fatal signal 7 (SIGBUS), code 1 (BUS_ADRALN), fault addr 0x42000000020102 in tid 12461 (ff_read), pid 12047 (main)
有时候也会报错,Fatal signal 7
原因:v8a架构的android手机部分机型的硬件使用的MTE机制,在native层使用的过程中为每一个分配的内存空间添加了一个memery tag,在调用的时候会进行检测memery tag是否被改变(主要出于安全性考虑,参考黑客攻击手段缓冲区溢出)
解决办法:
1.native每次分配空间的时候为最高位添加4为memery tag(太麻烦了,博主也没系研究)
2.在AndroidManifest.xml文件中添加 android:allowNativeHeapPointerTagging="false" 这个属性 如图:



