Closed gi13371 closed 3 months ago
shadow作者们好,我在调试代码的时候发现安装插件过程中提取插件so的时候有个needExtractNativeLibs()方法,用来判断是否需要提取so,最近调试代码发现这个方法返回的是false,跟踪代码发现是因为判断so文件的是否压缩的逻辑getMethod返回了0,请问什么原因会影响这个so文件是否压缩的判断?因为我之前的项目needExtractNativeLibs()方法返回的都是true。 还有想请教相关的知识,为什么要基于needExtractNativeLibs()的判断来决定是否提取so?
### Tasks
你可能没看这个方法的提交记录吧?上面有记录相关链接。
b4dc172792a2608fbcc3446ff3e1e6b14b010ddb
这是个manifest中声明的开关。如果开启这个特性,Android系统安装apk时就不会把so复制出来了,会直接从apk文件中加载so。进而要求这个so在apk中是不能压缩的。
所以shadow这个needExtractNativeLibs就是在模仿系统的安装逻辑。
你可能没看这个方法的提交记录吧?上面有记录相关链接。 b4dc172 这是个manifest中声明的开关。如果开启这个特性,Android系统安装apk时就不会把so复制出来了,会直接从apk文件中加载so。进而要求这个so在apk中是不能压缩的。 所以shadow这个needExtractNativeLibs就是在模仿系统的安装逻辑。
b4dc172
感谢解惑!
shadow作者们好,我在调试代码的时候发现安装插件过程中提取插件so的时候有个needExtractNativeLibs()方法,用来判断是否需要提取so,最近调试代码发现这个方法返回的是false,跟踪代码发现是因为判断so文件的是否压缩的逻辑getMethod返回了0,请问什么原因会影响这个so文件是否压缩的判断?因为我之前的项目needExtractNativeLibs()方法返回的都是true。 还有想请教相关的知识,为什么要基于needExtractNativeLibs()的判断来决定是否提取so?