Android应用程序汉化教程

来源:互联网 发布:手机淘宝星店入口 编辑:程序博客网 时间:2024/05/16 18:19

                                                                                       Android应用程序汉化教程

【转自】http://jollys.javaeye.com/blog/649814

在有APKTool之前,Android软件的汉化是一件非常痛苦的事情。例如汉化狂人的汉化工具,那都是直接修改二进制文件的,首先是寻找需要修改的字符串苦难(当然汉化狂人已经做得不错了),然后修改的字符串长度还要注意中文长度不能长过原来的文字……个中郁闷就不细说了。

APKTool可以说是一个革命性的工具,有了APKTool之后,可以说,俺拽软件的汉化工作到了一个前所未有的简单程度。
闲话不说,我们用汉化实例来证明APKTool的方便简单,在动手之前,需要去 APKTool 的网站把工具下载下来。当然也可以下载我已经打包的 APKTool.zip(Windows下使用)。

确保你的电脑已经安装了JDK1.6(JRE1.6也可以),而且安装了一个优秀的编辑软件(推荐UltraEdit),把APKTool解压到随便哪个你认为操作起来方便的目录。如果都好了,我们动手吧:



 

第一步,把需要汉化的文件(以汉化ColorNote为例)放到APKTool所在目录,然后命令行进入APKTool目录,执行下面的命令:

apktool  d  ColorNote.apk  ColorNote

这句命令的意思是,对ColorNote.apk这个程序进行反编译,获得的文件放在当前目录下的ColorNote目录中。正常反编译的话,能看到下面的提示:

I: Baksmaling…
I: Decoding resource table…
I: Decoding resources…
I: Copying assets and libs…

反编译完成,会在APKTool的目录下面,出现一个名叫ColorNote的目录,进去看看,是这个样子的!



 

用UltraEdit打开这个AndroidManifest.xml看看?哈哈,是纯文本文件呀!在打开res目录中的values中随便一个文件看看?也是纯文本文件啊!也就是说,只要一个UltraEdit,我们就可以轻轻松松进行汉化了(就把需要的字符串转换成中文就可以了,也不用考虑长度了!)至于要汉化哪些内容,这个大家自己研究吧,不用我详细说,也没有办法详细说的吧?(事实上,除了XML的文本资源文件外,老外写的很多程序,字符串都是hard coding在执行代码里面的,APKTool反编译会得到smali伪代码,有些在XML资源里面找不到的字符串,去看看smali的代码吧。)

中间的翻译过程我们跳过去,例如我们已经翻译好了,就在APKTool目录下执行下面的命令行:

apktool b ColorNote

这条命令是告诉APKTool,把这个ColorNote目录里的东西编译打包成APK程序

I: Checking whether sources has changed…

I: Smaling…

I: Checking whether resources has changed…

I: Building resources…

I: Building apk file…

生成的APK程序在哪里呢?在ColorNote/Dist目录里面,名字是out.apk

我们把这个out.apk文件签名之后安装看看?哈哈!完美中文汉化的俺拽程序来了!(当然,这要看汉化者的功力了。)

原创粉丝点击