android studio 把libs包打包到apk中;
只需在当前module里的build.gradle添加下列配置:
sourceSets { main { jniLibs.srcDirs = ['libs'] } }
1.这个设置即可把libs包打到apk中,也可以实现下列需要
需求:现在想设置应用加载.so库文件时是以32 bit去加载,怎样在mk编译和android studio 中设置?
1.在mk中设置如下:
LOCAL_JNI_SHARED_LIBRARIES := libmtal
LOCAL_MULTILIB :=32
解释如下:
LOCAL_JNI_SHARED_LIBRARIES := libmtal 这句就是用一个32 bit的.so 名字是libmtal(这个一般在系统中已经配置好了这个SO)只起到引导系统去32 bit下加载其他so文件
2.使用android studio 来编译apk ,引导其使用32 bit去加载其他so文件
需要将so文件放在下图位置:如果你需要用的so是本地打包进去的这样放就ok了,
注意:但是如果程序刚开始运行时没有一个本地的so需要从网络上下载so去以32 bit加载,这是运行在64 bit的系统默认就会以64bit加载
这时我们也像mk文件那样用个空的(libmtal.so)32bit 的so 放在libs -> armeabi-v7a 目录下,这个so只起到引导系统以32 bit 还是64bit