目前正在研究脚本打包,但是发现很多打包都是 apktool 反编译,然后将资源合并,处理 jar 文件,再回编译成 apk,但是如果 apk 反编译后,能够使用 gradle 回编译打包,那么对于一些第三方 SDK aar 包,接入就更方便了,不知道可不可行
1
liberize 2019-07-31 12:05:32 +08:00 via Android
目前的反编译工具都不完美,大一点的 apk 反编译会有很多错误,不能直接回编译
|
3
loginbygoogle 2019-07-31 12:16:57 +08:00 via Android
二次打包仔,真卑微
|
4
qw30716 OP @loginbygoogle 看来你是不懂棱镜,quick 这些公司了
|
5
hhh798 2019-07-31 12:29:27 +08:00
为什么要干这种事呢
|
6
twirain 2019-07-31 12:30:16 +08:00
之前考虑过这个,应该是可行的,但是成本太大,不如接入时拆解 aar
|
7
liberize 2019-07-31 12:48:51 +08:00 via Android
@qw30716 apktool 是编译 smali,不是源代码。楼主说的用 gradle 应该指的源代码回编译。
|
8
murmur 2019-07-31 12:50:03 +08:00
黑产就黑产,还出来交流技术?
|
10
qw30716 OP @liberize 我的想法是反编译母包,然后把 dex 转成 jar,然后在利用 gradle 打包,就不用考虑 smali 了,不知道是否可行
|
11
qw30716 OP @nioncodotcom 游戏公司接入第三方 SDK,自动化打包呗
|
13
yukiww233 2019-07-31 15:27:02 +08:00
是要批量盗版游戏加广告加内购?现在做黑产都那么理直气壮么
|
14
momocraft 2019-07-31 15:30:47 +08:00
在麦当劳叉薯条也是世界五百强 对吧
|
15
qw30716 OP 这个世界上沉溺于自己的世界键盘侠多的是,总有人以最大的恶意看待一切,你永远叫不醒一个装睡的人
|
16
leopku 2019-07-31 16:11:21 +08:00
借楼问下安卓的 proguard 能防 apktool 吗?
|
18
nicevar 2019-07-31 16:19:27 +08:00
又觉得可行,又不愿意仔细研究,跑来问很难到你想要的答案,你至少好好研究一下 gradle,我看 dex 转成 jar 估计你都没怎么仔细看过吧,随便找几个 apk 练习一下也不是什么麻烦事,要是那么容易 dex 就成可编译源码,你都不会在这里提问了
|
19
nicevar 2019-07-31 16:20:40 +08:00 1
@leopku 防不住,progruard 基本上就是个重命名,只是稍微浪费反编译人的时间而已,so 都能被安排的明明白白的,别说混淆了
|
20
zw1one 2019-07-31 16:27:00 +08:00
建议你上 Stack Overflow 问,这里难道不是聊天灌水的地方?(狗头)
|
22
maokabc 2019-07-31 16:36:49 +08:00 via Android
这么做本来就有问题,方向反了,真要处理。第三方 sdk 用 dx 这些命令转成 dex,然后用 smali 或者直接用它的 dexlib2 把第三方 dex 合并进去。
|
25
qw30716 OP 为啥要研究这个,我说明一下,因为我们是游戏公司,需要接国内国外各种渠道 SDK,但是国外 SDK 都是 aar 形式的多,我们的自动化打包工具是反编译,利用 dx 把 jar 转成 dex,最后在回编译成 apk,但是对于国外的 aar,基本只能依靠单独的一个项目打包,因为依赖太多了,所以想研究一下能否使用 gradle 处理 aar,然后利用 apktool 打包
|
26
nicevar 2019-07-31 17:56:59 +08:00
@qw30716 为啥不对 aar 的 sdk 进行单独处理?我不知道你们是集成什么样的 sdk,如果都是同一类型抽象一层出来,比如广告之类的,无论集成多少家,动态配置 gradle 的模块就行了
|
27
qw30716 OP @nicevar 有的 aar 有引用别 aar 这点你不好处理 要手动把所有 aar 下载下来 ,有的 aar 里面有七八个 aar 文件,如 Facebook
|