WEB开发网
开发学院手机开发Android 开发 APK反编译利器Apktool实现android程序汉化 阅读

APK反编译利器Apktool实现android程序汉化

 2010-08-20 01:24:00 来源:WEB开发网   
核心提示:说起APK的汉化,目前大部分教程都是让用Hex Workshop或者Android ResEdit来做,APK反编译利器Apktool实现android程序汉化,但是实际操作后,就会发现:1、Hex Workshop操作繁琐,一般我们关心的是values-zh-rCN(简体中文)和values-zh- rTW(繁体中文

说起APK的汉化,目前大部分教程都是让用Hex Workshop或者Android ResEdit来做。但是实际操作后,就会发现:

1、Hex Workshop操作繁琐,经常出现搜不到想要修改的字符的情况;

2、Android ResEdit简单用用可以,修改稍微复杂一点就会出现整条整条丢字符串的情况;并且新内容不能比原内容长——谁能保证我的本地化语言就一定比原来的短 呢?

现在好了,老外写的《android-apktool》软件,可以帮助我们把APK反编译,生成程序的源代码和图片、XML配置、语言资源等文件。我们对 图片和语言资源等文件修改后,可以再把它们编译打包成APK,签名后就是手机可以安装的本地化/修正版APK了。

android-apktool》软件软件可以访问它的主页http://code.google.com/p/android-apktool/下 载获得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。下载 后解开,为了方便使用,按作者的推荐把得到的4个文件复制到C:Windows文件夹里。

这个工具是Java写的,需要你的电脑安装了JRE或者JDK,并在系统环境变量Path里加入java.exe所在路径。

以上准备工作做好后,就可以用它来反编译APK了。这里我用动态壁纸的APK来做示范。

如果用过动态壁纸,你也许会发现在设置壁纸时,界面的显示有点问题:“动态壁纸”,在手机上中文显示为“当前壁纸”。这是“动态壁纸选择 器”LiveWallpapersPicker.apk的翻译错误造成的。

(假设LiveWallpapersPicker.apk放在C盘根目录)

开始 > 运行,输入cmd,回车。 apktool d "C:LiveWallpapersPicker.apk" "C:LiveWallpapersPicker"

(命令行解释:apktool d 要反编译的文件 输出文件夹)

这样,LiveWallpapersPicker.apk就被反编译了,输出内容在C:LiveWallpapersPicker文件夹里。

打开C:LiveWallpapersPicker文件夹,我们发现里面有一些XML文件和一些文件夹。绝大部分情况下,语言和图片资源都在res文件 夹里,我们这个例子当然不例外。

打开res文件夹,可以其中又是很多文件夹。(又是)绝大部分情况下,语言资源都放在values*文件夹里。比如说values放默认语言(英语居多),values-de放德语,values-fr放法语等等。一般我们关心的是values-zh-rCN(简体中文)和values-zh- rTW(繁体中文)。

打开values-zh-rCN文件夹,其中有个strings.xml。打开看看:

1 2 3 4  下一页

Tags:APK 编译 利器

编辑录入:coldstar [复制链接] [打 印]
赞助商链接