稍微大一些的项目都会用到第三方库,所以不可避免的会有针对不同手机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{
...
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 Studio指定引用jnilibs 特定CPU架构的so库文件的更多相关文章

  1. Android Studio工程引用第三方so文件

    应用程序二进制接口(Application Binary Interface)定义了二进制文件(尤其是.so文件)如何运行在相应的系统平台上,从使用的指令集,内存对齐到可用的系统函数库.在Androi ...

  2. Android studio 中引用jar的其实是Maven?(二)

    上一篇:Android studio 中引用jar的其实是Maven?(一) 搭建maven仓库: 去了解一个新的事物的时候,最好的方式就是去使用它.例如去了解一座城市的时候,最好的方式就是乘坐公共交 ...

  3. Android studio 中引用jar的其实是Maven?(一)

    由于Studio比eclipse多了一步对工程构建的步骤,即为build.gradle这个文件运行,因此其引入第三方开发jar包与lib工程对比Eclipse已完成不同,引入第三方jar与lib工程显 ...

  4. Android Studio如何引用jar包裹(不gradle)

    这和eclipse最大的区别.与非常人的预期开始Android Studio我们很不高兴这一套. 它直接在地图上.首先通过File->Projcet structure打开project结构界面 ...

  5. Android studio 添加引用Module项目 与 设置Module项目的Libs的Jar在主项目里使用

    前言 添加引用Module项目 设置Module项目的Libs的Jar在主项目里使用 1.在项目里添加libs包,并且加入jar 2.设置这个module项目的build.gradle depende ...

  6. ANDROID开发中注意不同手机CPU架构对SO文件的不同需求。

    如果没有对应于手机的SO文件,那么在调用第三方SDK时,会经常发生莫明其妙的错误.所以了解你调式或开发的目的手机CPU架构是很有必要的.

  7. Android Studio将引用第三方jar包的library打包成jar包

    在该module的build.gradle中添加 task makeJar(type: Jar) { archiveName 'mysdk.jar' from('build/intermediates ...

  8. Android Studio中通过CMake使用NDK并编译自定义库和添加预编译库

    Note:这篇文章是基于Android Studio 3.01版本的,NDK是R16. step1:创建一个包含C++的项目 其他默认就可以了. C++ Standard 指定编译库的环境,其中Too ...

  9. 如何查询当前手机的cpu架构,so库导入工程又出异常了?

    执行adb命令: adb shell cat /proc/cpuinfo 对应文件夹 AArch64 == arm64-v8a ARMv7 == armeabi-v7a ............等 其 ...

随机推荐

  1. 加密、签名和SSL握手机制细节

    openssl系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 1.1 背景知识 对称加密     :加密解密使用同一密钥,加解密速度快.随 ...

  2. mst总结

     1.jsonp跨域 Jsop的原理:利用script不存在跨域的问题,动态创建script标签,把需要请求的数据源地址赋值给其src属性,并且指定一个回调函数,从而接受到我们想要的数据 后台设置下 ...

  3. vs 设置自动缩进tab转换成空格

    工具   选项   文本编辑器    如下图  选中插入空格 使用技巧: 按Ctrl+K+F组合键,可以自动进行代码对齐.

  4. windows下《Go Web编程》之Go命令

    Go命令: go build 用于编译代码,默认会编译当前目录下的所以go文件.若只需编译某个文件,go build后加上文件名,如go build a.go. go build会忽略目录下以“_”或 ...

  5. mysql-8.0.12-winx64 解压版安装(转)

    1.官网下载 https://dev.mysql.com/downloads/mysql/ 2.解压到一个合适的目录 3.配置环境变量 path : bin的目录(必须配置) MYSQL_HOME:m ...

  6. kafka consumer重复消费问题

    在做分布式编译的时候,每一个worker都有一个consumer,适用的kafka+zookeep的配置都是默认的配置,在消息比较少的情况下,每一个consumer都能均匀得到互不相同的消息,但是当消 ...

  7. Python基础01_介绍_HelloWorld

    首先,当然是python的版本了,老师讲课学习都是以python3为主, 我的centos中还是python2.6.6 然后参照老师的教程升级到了2.7.14 谢谢! 平时主要练习3的,有时间的情况下 ...

  8. poi读取excel内容工具类

    该工具类可以读取excel2007,excel2003等格式的文件,xls.xlsx文件格式 package com.visolink; import org.apache.poi.hssf.user ...

  9. the implemention of redblack tree

    public class redbalcktree { private class Node{ private int val; private int key; boolean color; //b ...

  10. # 20175120 2018.3.3 《Java程序设计》第1周学习总结

    ## 教材学习内容总结 1.安装ubuntu,在实验楼学习liunx系统各种功能的实现.2.在ubuntu平台上进行java程序的编写3.学会使用JDB调试java程序,并将代码上传到码云上4.学习j ...