加载so分为动态加载和静态加载

2020-07-15  本文已影响0人  主音King

加载so分为动态加载和静态加载。

静态加载:System.loadLibrary(String libname),来直接加载,对于一个app它只能加载system的和我们自己添加到jniLibs下的so文案。静态加载会去这些路径找到对应的库否则会抛出异常。packagename/system/lib

动态加载:System.load(String filePath)来加载filePath对应路径下的so文件,这个路径不可以是外置SDcard等拓展路径,必须是/data/**{package}下

最理想的方案就是直接指定packagename/system/lib,
既然是最理想的,那么这方案肯定是不行的,因为这个目录,只有读的权限,没有写的权限.
拿root的 手机可以测试,我们手动把so.拷贝到这个目录是可以的.

上一篇下一篇

猜你喜欢

热点阅读