当前位置: 首页 > news >正文

Android 解决引入的三方库中类名冲突问题

参考:

Android开发——如何解决三方库中的类名冲突问题_android 类冲突-CSDN博客

Android 解决 jar/aar 包类名冲突 - 简书

实操步骤

1.提前安装好unzip-5.51-bin,proguard-7.4.0,jarjar-1.4软件

2.解压包名冲突的 AAR 文件

进入到需要修改包名的aar(此例为itrustekyclibrary.aar)存放的目录,执行解压命令:

unzip itrustekyclibrary.aar -d tempFolder

3.将tempFolder文件夹中的classes.jar放到 E:\jar-tool\目录下

注意与下述混淆规则文件convert.txt中的-injars path中指定的path一致即可

4.创建混淆打包规则文件 convert.txt

-injars 'E:\jar-tool\classes.jar'
-outjars 'E:\jar-tool\classes-out.jar'-dontskipnonpubliclibraryclassmembers
-dontshrink
-dontoptimize
-dontusemixedcaseclassnames
# 在这里指定要转换成的包名
-repackageclasses a.a
-dontpreverify
-dontnote
-dontwarn
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod# 需要注意观察原始 jar 包中哪些是没有混淆的,需要保留
-keep class jp.co.cybertrust.itrust.identification.** {*;}
-keep class b.** {*;}
-keep class c.** {*;}
-keep class d.** {*;}
-keep class e.** {*;}
-keep class f.** {*;}
-keep class g.** {*;}
-keep class h.** {*;}
-keep class i.** {*;}
# 因为我们的目的只是替换外层包名,类内部的一些东西都不用管
-keepclassmembers class ** {*;}

5.执行命令生成新的classes.jar

进入对应的文件目录:E:\proguard-7.4.0\proguard-7.4.0\bin,执行重打包命令:

proguard.bat @E:\jar-tool\convert.txt

6.替换原始的classess.jar

将新生成的classes-out.jar替换tempFolder中的classes.jar

7.重新打包aar, 命令如下(注意空格后有一个点)

jar cvf newAAR.aar -C tempFolder/ .

http://www.lryc.cn/news/309478.html

相关文章:

  • 扩展学习|大数据分析的现状和分类
  • java学习笔记-初级
  • 使用axios 封装大文件上传,支持断点续传的功能
  • 在python中,设置json支持中文字符串
  • qnx du统计目录大小单位
  • 测试人员如何向开发人员准确清晰地描述问题?
  • 何恺明新作 l-DAE:解构扩散模型
  • 【数学建模获奖经验】2023第八届数维杯数学建模:华中科技大学本科组创新奖获奖分享
  • Kubernetes(k8s第二部分)
  • mac新环境
  • 神经网络基础知识:LeNet的搭建-训练-预测
  • SpringMVC 学习(七)之报文信息转换器 HttpMessageConverter
  • 浅谈密码学
  • Android 混淆是啥玩意儿?
  • 【嵌入式——QT】QListWidget
  • 爬虫入门到精通_基础篇5(PyQuery库_PyQuery说明,初始化,基本CSS选择器,查找元素,遍历,获取信息,DOM操作)
  • 用冒泡排序模拟C语言中的内置快排函数qsort!
  • 智慧公厕:打造智慧城市环境卫生新标杆
  • 【学习版】Microsoft Office 2021安装破解教程
  • 基于java Springboot实现课程评分系统设计和实现
  • git操作基本指令
  • YOLO算法
  • 【Android】更改手机主题导致app数据丢失问题
  • Dell R730 2U服务器实践3:安装英伟达上代专业AI训练Nvidia P4计算卡
  • Nacos环境搭建 -- 服务注册与发现
  • Linux了解
  • Keil新版本安装编译器ARMCompiler 5.06
  • 【基础训练 || Test-1】
  • Python读取hbase数据库
  • LeetCode41题:缺失的第一个正数(python3)