须知少年凌云志,曾许人间第一流。这篇文章主要讲述Android Studio指定引用jnilibs 特定CPU架构的so库文件相关的知识,希望能为你提供帮助。
稍微大一些的项目都会用到第三方库,所以不可避免的会有针对不同手机cpu架构的.so库文件
‘x86‘, ‘x86_64‘, ‘mips‘, ‘mips64‘
‘armeabi‘ ,‘armeabi-v7a‘,
‘arm64-v8a‘
但是不是所有的第三方库都会适配所有的cpu架构,本人亲测采用一种降低性能却减少库文件的方式
就是只用armeabi-v7a库;有armeabi-v7a就把其他的都删掉,没有armeabi-v7a,把armeabi的文件移到armeabi-v7a中,把其他的都删除
下面就告诉大家怎么适配特定的cpu架构库 在主module .gradle加 ndk{},依赖的module也要添加
【Android Studio指定引用jnilibs 特定CPU架构的so库文件】
android{ ... defaultConfig { applicationId "XXXXXXX" minSdkVersion 11 targetSdkVersion 21 versionCode 126 versionName "1.2.6"ndk { //选择要添加的对应cpu类型的.so库。// 还可以添加 ‘x86‘, ‘x86_64‘, ‘mips‘, ‘mips64‘ abiFilters ‘armeabi‘ //‘armeabi-v7a‘,‘arm64-v8a‘ moduleName "app" }} }
abiFilters 就是过滤.so文件的方法;如上配置就能让你的项目只打包armeabi的库文件;其他依赖module同样配置,最终效果就是你的app只适配armeabi CPU的机型; 打包的APK文件 libs下只有 armeabi的so文件;
推荐阅读
- Android JNI之静态注册
- appium中的等待方式使用
- Android平台介绍
- 获取Android文件路径
- Android零基础入门第55节(ImageSwitcher和TextSwitcher使用)
- (转载)Android常用的Dialog对话框用法
- 下载google的crx插件,360极速浏览器安装postman插件,安装crx显示必须以application/x-chrome-extension类型提供
- Android平台jieahoa
- android中进程的优先级