
打包
文章平均质量分 79
锐湃
这个作者很懒,什么都没留下…
展开
-
5 款逆向工具,7 款代码分析工具,11 项优化建议
本文主要说了三个部分内容,第一部分内容是业务问题和挑战。第二部分内容是包体优化基础知识。第三部分内容是代码优化。代码优化分为四部分内容,第一部分内容是代码优化的思路,第二部分内容是 7 款 apk 黑盒逆向工具,第三部分内容是 7 款代码分析工具,最后一部分内容是代码优化注意事项。近些年来,中大厂门户 app 不断成熟,功能不断堆积和迭代,Android 打包后体积越来越大。安装包体大小不仅对用户留存、市场推广有负面影响,而且如果后续缺乏长效治理监管机制,那么包体大小会出现边治理边污染的现象。转载 2023-02-08 11:09:45 · 5031 阅读 · 0 评论 -
打包APK时出现Entry name ‘classes.dex‘ collided错误
今日升级了一下Android studio版本,在打包release的时候出现了下面的这个错误Entry name ‘classes.dex‘ collided其实只要将原本存放release APK的目录里面的内容清除就行了。再不行的话再把项目的build目录/output/apk/debugapk也删了,再重新打包。以上方法还是不行的话再考虑下面的方法:在module路径下build.gradle中添加如下代码android { ... ...转载 2022-04-27 18:14:31 · 4566 阅读 · 0 评论 -
pk8/x509.pem转换为keystore
背景我们都知道AndroidManifest.xml配置如下属性android:sharedUserId="android.uid.system"复制代码直接运行是跑不起来的,我们只有拿到了平台的pk8/x509.pem文件通过如下签名命令:java -jar signapk.jar platform.x509.pem platform.pk8 old.apk [new].apk才能获得与android.uid.system相同的权限,才能调用系统api,这种情况会给开发带来很大的困扰转载 2022-03-17 10:49:57 · 2316 阅读 · 0 评论 -
buildSrc使用,依赖统一管理
前言之前我写过一篇全局统一配置文件config.gradleproject下build.gradle文件和module下buil.gradle_haizhuo的博客-优快云博客_build.gradle module,把当时开发用到的一些类库还有版本号抽出来,放到工程目录下config.gradle文件下,moudle目录的gradle中设置引用就行了。记得当时还是用support包,现在开始用kotlin开发了,所以准备换成buildSrc。项目根目录下新建一个名为 buildSrc 的文件夹转载 2022-03-08 17:47:54 · 1026 阅读 · 0 评论 -
aar 嵌套引用本地 aar 的打包
Android studio 的 module 打包一般会打包成 aar 的形式。如果 module 引用了一个本地的 aar,在打包的时候,这个被引用的 aar 是不会打包进去的,这种设计思想是比较好的,可以很好的避免包冲突的问题。例如 App 引用了两个 aar(1.aar 和 2.aar),1.aar 和 2.aar 都依赖了第三方的 3.aar,如果1.aar 和 2.aar 都把 3.aar 打包进去的话,App 再引用 1.aar 和 2.aar 的时候就会因为都有 3.aar 发生引用冲突。转载 2021-08-17 21:10:20 · 2466 阅读 · 0 评论 -
补齐Android技能树 - 从害怕到玩转Android代码混淆
0x0、引言Android代码混淆,老生常谈了,不过大部分Android仔对它的认识可能还处于这样的阶段(比如:写这篇文章前的我):1、日常开发Debug包时不用混淆,正式发布Release包前开启代码混淆; 2、混淆好处① → 类、方法、变量名变成短且无意义的名字,提高反编译后代码的阅读成本; 3、混淆好处② → 删除无用的类、方法与属性,缩减了APK包的大小; 4、混淆好处③ → 对字节码进行优化,移除无用指令,应用运行更快; 5、怎么混淆 → 主项目的 build.gradle 设置转载 2021-06-08 18:12:28 · 415 阅读 · 0 评论 -
Gradle多渠道打包
转自:https://www.cnblogs.com/wangziqiang/p/4720391.html友盟多渠道打包废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段:<meta-data android:name="UMENG_CHANNEL" android:value="Channel_ID" />里面的Channel_ID就是渠道标示。我们的目标就是在编译的时候这个值能够自动变化。第一步 在AndroidMani转载 2020-12-18 14:13:57 · 356 阅读 · 0 评论 -
android studio DEX 方法超过64K限制和gradle编译OOM问题解决,异常名:Error:Execution failed for task ':app:dexDebug'. >
转载来自:http://www.07net01.com/2015/08/889749.html 今天再来讲讲AndroidStudio这个神级的编译器被它虐成狗的经历。最近公司开发了一款自己的项目,项目功能有点小复杂,以至于加入项目的三方库jar文件有点多,项目变得很庞大导致遇到了各种蛋疼的问题。相信你第一次遇到这种问题也会是被虐成狗,那今天就来教你解决这种问题。转载 2016-12-22 14:43:09 · 497 阅读 · 0 评论 -
Android代码混淆常见配置
项目发布之前混淆是必不可少的工作,混淆可以增加别人反编译阅读代码的难度,还可以缩小APK包。 一、使用原理: 见:ProGuard的作用、使用及bug分析(http://www.trinea.cn/android/proguard-use/); Proguard语法及常用proguard.cfg代码段(http://www.trinea.cn/android/proguard-gr转载 2016-11-17 15:08:29 · 350 阅读 · 0 评论 -
其实你不知道MultiDex到底有多坑
遭遇MultiDex愉快地写着Android代码的总悟君往工程里引入了一个默默无闻的jar然后Run了一下, 经过漫长的等待AndroidStudio构建失败了。于是总悟君带着疑惑查看错误信息。UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgumentException: method ID not in [0, 0xffff转载 2015-10-15 15:57:40 · 2720 阅读 · 0 评论 -
解决Android单个dex文件不能超过65536个方法问题
当我们的项目代码过大时,编译运行时会报Unable to execute dex: method ID not in[0, 0xffff]: 65536)错误。当出现这个错误时说明你本身自己的工程代码中含有的太多的方法,或者你的工程lib文件夹下引用的第三方插件jar包有太多的方法,这两者的方法加起来已经超过了65536这个数目。而谷歌规定单个dex文件中的方法不能超过65536的限制。转载 2015-09-23 16:12:40 · 820 阅读 · 0 评论 -
解决 eclipse 上 Keystore was tampered with, or password was incorrect
修改Android签名证书keystore的密码、别名alias以及别名密码之前在测试Eclipse ADT的Custom debug keystore自定义调试证书的时候,发过一篇关于调试证书规格的博文:Eclipse ADT的Custom debug keystore所需证书规格,提到过自定义调试证书的密码和alias命名以及alias密码都是有规矩的。其实Androi转载 2015-08-25 14:39:05 · 4949 阅读 · 0 评论 -
Ant自动编译打包&发布 android项目
Eclipse用起来虽然方便,但是编译打包android项目还是比较慢,尤其将应用打包发布到各个渠道时,用Eclipse手动打包各种渠道包就有点不切实际了,这时候我们用到Ant帮我们自动编译打包了。1 Ant自动编译打包android项目 1.1 Ant安装 ant的安装比较简单,下载ant压缩包 http://ant.apache.org (最新的为1转载 2015-08-25 17:20:36 · 872 阅读 · 0 评论 -
if doesn't support the "condition"attribute 问题解决
因为要实现自动循环打包,而ant本身不支持foreach循环,需要引入第三方jar包,下载ant-contrib-1.0b3.jar之后把它放到ant所在目录的lib目录下,例如我的在F:\ apache-ant-1.9.4\lib,然后要进行关键的一步:右键点击该jar文件à选择“打开方式”àWinRAR压缩文件管理器,依次打开net/sf/antcontrib/antcontrib.prope转载 2015-08-25 17:00:26 · 1668 阅读 · 0 评论 -
Android程序自动化打包
在一般的Android开发中,我们通常使用Eclipse自带的导出工具来进行App的签名和发布,Android自动化打包,就是利用脚本将这样一个手动操作的过程转化为一个命令搞定。准备 需要配置好JDK、Android SDK和Ant的环境步骤准备好项目的源码和依赖库源码,最好放在同一级目录下,确保源码和依赖库可在IDE中编译成功,这样就无需调整pr转载 2015-08-25 16:32:53 · 484 阅读 · 0 评论 -
android 使用ANT批量打包apk步骤
一、 到apache官网下载apache-ant,截止2014年12月10日最新版本是1.9.4.下载地址:http://ant.apache.org/file:///C:/Users/xinyuli/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg选择上图所示项二、 配置环境变量(如果转载 2015-08-25 16:58:58 · 578 阅读 · 0 评论