|
楼主 |
发表于 2011-4-7 12:55
|
显示全部楼层
回复 hiliver 的帖子
2 j% k3 Q, m' A7 N0 v& A
7 M5 J; l0 y, n: ~6 V用dex2jar反编译dex 到jar没有问题,但是用AXMLPrinter2反编译的XML文件有些地方不太好, 比如标题,颜色,还有Id属性, layout属性等等 其他属性,这个文件应该将编译后的xml文件直接反编译回来的, 可读性不强。 + ~. N& N% o9 P, H* B9 e$ j
# {9 q9 j A4 V7 q" }% {9 ?
请看下面一个用AXMLPrinter2反编译后的xml文件, 以反编译支 付宝手机客户端 为例 , 这个xml文件是支付宝about 文件(alipay_about_320_480.xml):
& @+ {, C! @5 \* f/ q0 c- P* q- a% I: ]$ h! Z
从上面的文件可以看到, 反编译后的文件可读性不好。0 V! r0 b9 P Q% L) d! L9 a
; V. k8 [+ k) B, u& z$ {2 B @最近发现有一个开源工具apktool(http://code.google.com/p/android-apktool/), 这个工具功能比较强悍, 可以反编译成源码,xml文件和语言资源文件; 我们还可以对xml文件进行修改(汉化), 然后在利用此工具编译打包APK,然后签名后就可以在手机上安装了。 简单来说apktool 可以反编译apk文件, 也可以编译源码打包成APK文件。
: G$ b( B$ i8 f
7 Y2 t* G3 C$ `+ G0 s# ^/ f V2.0 修改: 用apktoo替换AXMLPrinter2 来反编译xml文件。
; a& F& N! @# ]' b- s( }软件主界面:! r1 ^( p2 A2 F# ]& [3 Z6 c7 H
9 [6 ~/ s! S( P- M0 b) t% a
还是以上面的about页面为例子, 展示一下apktool反编译的效果:3 K7 y9 H, O3 l
3 B3 _# m, R- l3 S4 A W这个反编译的效果可读性比较好了吧, 通过这个例子可以看到AXMLPrinter2 和 apktool的差距了吧。 ) ^' J! Q7 o& N: q ~2 I b
1. 反编译后的apk主目录如下图:$ i; V% ~7 s* F/ O* d, Y( w
7 k" J4 ?. }: }+ D0 d& @, L }2. res文件目录:$ z. Y$ ?$ d! ?1 h: s
# ~; t5 J6 E8 H2 l2 }
如果使用AXMLPrinter2来进行反编译, 就没有values文件夹。
; i& p' U( a3 r; A2 t* m0 \! j3.登录菜单
6 w1 _* W t; T3 o: Q6 ]3 q! g' G1 Z4 @6 ^7 e
6 _+ Q! ]: K' A9 d
4. 看下res/values下的string.xml, 如果使用AXMLPrinter2来进行反编译, 就没有values文件夹 。
) @0 }" B2 c9 u
7 {* w }- T. A" | Q: ^$ S
/ s9 Z s8 i' {4 I |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
×
评分
-
查看全部评分
|