apk 反编译后能否使用 gradle 重新打包?

2019-07-31 12:02:40 +08:00
 qw30716

目前正在研究脚本打包,但是发现很多打包都是 apktool 反编译,然后将资源合并,处理 jar 文件,再回编译成 apk,但是如果 apk 反编译后,能够使用 gradle 回编译打包,那么对于一些第三方 SDK aar 包,接入就更方便了,不知道可不可行

8089 次点击
所在节点    Android
29 条回复
leopku
2019-07-31 16:35:53 +08:00
@qw30716 @nicevar 多谢
maokabc
2019-07-31 16:36:49 +08:00
这么做本来就有问题,方向反了,真要处理。第三方 sdk 用 dx 这些命令转成 dex,然后用 smali 或者直接用它的 dexlib2 把第三方 dex 合并进去。
qw30716
2019-07-31 16:41:25 +08:00
@nicevar 目前一直测试研究中
qw30716
2019-07-31 16:42:30 +08:00
@maokabc 现在我这边就是这个方式,所以想研究其他的
qw30716
2019-07-31 16:49:36 +08:00
为啥要研究这个,我说明一下,因为我们是游戏公司,需要接国内国外各种渠道 SDK,但是国外 SDK 都是 aar 形式的多,我们的自动化打包工具是反编译,利用 dx 把 jar 转成 dex,最后在回编译成 apk,但是对于国外的 aar,基本只能依靠单独的一个项目打包,因为依赖太多了,所以想研究一下能否使用 gradle 处理 aar,然后利用 apktool 打包
nicevar
2019-07-31 17:56:59 +08:00
@qw30716 为啥不对 aar 的 sdk 进行单独处理?我不知道你们是集成什么样的 sdk,如果都是同一类型抽象一层出来,比如广告之类的,无论集成多少家,动态配置 gradle 的模块就行了
qw30716
2019-07-31 18:04:38 +08:00
@nicevar 有的 aar 有引用别 aar 这点你不好处理 要手动把所有 aar 下载下来 ,有的 aar 里面有七八个 aar 文件,如 Facebook
nicevar
2019-07-31 18:40:40 +08:00
@qw30716 我怀疑你是不是停留在 eclipse+ant 的年代,现在 gradle 的配置不就是各种依赖,你模块化之后各个模块的依赖各自管理,你要是嫌下载依赖麻烦本地缓存或者公司搭建一个 nexus
Mcoffee
2020-03-23 13:35:10 +08:00
@qw30716 楼主还关注这个吗,我最近也在搞这个,依赖可以建个 module 处理,有的游戏的 aar 资源处理麻烦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/587824

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX