如题,今天在打包项目的时候各种报错,在debug的时候没有任何问题,那么很快定位到问题所在---第三方.so文件混淆出问题了....

项目是在AS中编译的一个module,依赖了一个以前在Eclipse中开发的library,该library通过import module导入到as作为一个依赖库的module

想到需要添加混淆忽略,直接在library中编辑proguard-rules.pro,在编译过程中报各种文件找不到....总之折腾了半天,可能文件结构较复杂,因为在import module时也修改了部分结构,其中有各种第三方jar包与.so库....

最后战略性放弃....

那么直接在library中忽略不成功,可否在app项目中直接忽略library中的.so文件呢?

最后正解 - -

在app的proguard-rules.pro忽略依赖库中的文件写法如下:

-libraryjars../XXX(此处为library名称)/src/main/jniLibs/armeabi/xxxxx.so

-libraryjars../XXX(此处为library名称)/src/main/jniLibs/armeabi-v7a/xxxxx.so

-libraryjars../XXX(此处为library名称)/src/main/jniLibs/x86/xxxxx.so

同理依赖库中jar包在app 中忽略混淆的写法

-libraryjars../XXX(此处为library名称)/libs/xxx.jar

-libraryjars../XXX(此处为library名称)/libs/xxx.jar

最后温馨提醒:

shrinkResources true

(该属性为打包时是否自动删除无用的资源与代码,慎用!!据说有人因为这个属性导致app崩溃..此处不详细讨论..)

android so文件不混淆_Android studio 混淆打包时如何忽略依赖库中的第三方.so文件...相关推荐

  1. 【错误记录】Android 应用安装后出现两个启动图标 ( 排查应用及依赖库中配置了 android.intent.category.LAUNCHER 的 Activity )

    文章目录 一.报错信息 二.解决方案 一.报错信息 Android 应用安装后 , 出现两个相同的启动图标 , 其中一个可以启动 , 另外一个启动后 , 直接崩溃 ; 卸载其中一个 , 会将整个应用卸 ...

  2. 文件不混淆_Android Studio配置反混淆

    Android Studio如何混淆 为什么要混淆 了解安卓程序编译的会知道 其实我们的apk并不是很安全,从apk从可以解包出,步骤: 将apk文件改成zip结尾 然后解压zip 然后就会发现里面有 ...

  3. android so文件不混淆_Android NDK混淆

    项目原因研究Android的So库代码混淆,增加IDA工具查看的复杂度.简单接触了ollvm 混淆组件.网上查看了很多人的文章,简单做个随笔备忘. 1.ollvm下载编译 我的是macbook环境. ...

  4. android 子module混淆_Android 多模块打包混淆填坑记

    最近有个 sdk 的项目使用了多模块(Module)开发,然后提供 jar 包给接入者使用,要求大部分类是混淆过的,保留几个接口, Android Studio 能够导出 aar 文件,对于导出 ja ...

  5. android 子module混淆_Android 代码混淆 混淆方案

    欢迎关注专栏:里面定期分享Android和Flutter架构技术知识点及解析,还会不断更新的BATJ面试专题,欢迎大家前来探讨交流,如有好的文章也欢迎投稿.Flutter跨平台开发终极之选​zhuan ...

  6. android 取消和svn关联_Android Studio如何取消与SVN的关联

    Android Studio如何取消与SVN的关联?操作起来其实很简单: 把Android Studio切换到Project模式,有个.idea文件夹,在该文件夹下找到vcs.xml文件,打开该文件, ...

  7. Android studio 多渠道打包(包括不同的包使用不同的资源文件、不同的包写不同的代码,包名等等)

    1,创建一个项目 ** 2,在项目中创建几个文件夹,等级和main文件夹平级,我这里创建了2个文件夹作为测试用.分别为ou1,out2.(文件夹名字按自己需求创建,用于区分不同渠道就行) ** 3,两 ...

  8. 关于Android Studio Arctic Fox 无法在 build.gradle(Project) 中添加第三方Maven仓库的解决方案

    问题描述 在 Android Studio Arctic Fox 版本中创建项目,原本应该在 build.gradle(Project) 中配置第三方 Maven 仓库,手动配置后居然报错: 1: T ...

  9. 【Android 应用开发】使用蒲公英 SDK 收集崩溃日志信息 ( 导入依赖 | 申请 Key | 集成代码 | 清单文件配置 | 手动上传日志 | 手动检查更新 )

    文章目录 一.导入依赖 二.申请 API Key 和 FrontJS Token 三.Application 集成 PgyerSDKManager 代码 四.AndroidManifest.xml 清 ...

最新文章

  1. CentOS7 设置用户密码规则
  2. Java构造内部类实例
  3. linux 使用 cp 命令强制覆盖功能
  4. Lombok中@Data注解 @ToString注解 @NoArgsConstructo注解 @AllArgsConstructor注解
  5. .NET 6 新特性 Parallel ForEachAsync
  6. Bash脚本教程之数组
  7. mysql emma_ubuntu mysql emma中文乱码问题解决
  8. JVM 面试知识整理
  9. html文本框中有一个叉号标志,html 输入框显示“小叉叉”的清空方法
  10. oracle的事物起始于,oracle 学习笔记(十) 事务控制语句
  11. Mirth Linux(Centos)无界面安装及配置,可作为服务总线用,功能超强,就不细说了
  12. 固态硬盘开盘数据恢复的方法
  13. 免费天气API,免费天气接口,天气预报
  14. 蝴蝶效应,混沌理论与股市
  15. QML QtLocation地图应用学习-2:实现测距功能
  16. 写给Android App开发人员看的Android底层知识合集(1-8)
  17. 测绘计算机编程心得体会,测绘心得体会
  18. 偏微分方程简明教程第三章部分答案
  19. JS的传递数据不刷新页面的应用
  20. 单线服务器和双线服务器是什么意思?

热门文章

  1. linux常用内核端口,基于Linux下的/O端口和I/O内存详解
  2. 【电脑帮助】解决Wind10系统没有本地用户和组的问题
  3. vue----sourceMap
  4. python与matlab哪个更容易学-详解python和matlab的优势与区别
  5. java.lang.SecurityException: Prohibited package name: java.xxx.xxxx
  6. CSS text-decoration 属性
  7. IDEA 修改项目名称
  8. java 中Double类型转换为百分比格式
  9. MVC+LINQToSQL的Repository模式之(二)数据基类
  10. flask使用sqlit3的两种方式