宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

                                                   .apk软件汉化知识储备

        .apk文件实际是一个zip压缩包,可以通过解压缩工具解开.apk文件。         

        META-INF目录下存放的是签名信息

        res目录是存放资源文件的

        不同的软件,res目录下的文件夹也不同,一般有:

                          drawable(图片所在文件夹)

                          drawable-hdpi(高分辨率图片所在文件夹)

                          layout(界面布局xml文件所在文件夹)

                          layout-hdpi(高分辨率界面布局xml文档所在文件夹)

                          menu(一些菜单文件所在目录)

                          raw(存放帮助类文档或其他资源的文件夹,如help.html;clock.zip)

                          xml(其他一些xml文件所在目录)

       通常需要汉化的是resources.arsc   AndroidManifest.xml     classes.dex三个文件

       resources.arsc是编译后的二进制资源文件,是主要的资源文件,汉化时首先要看这个文件,最先汉化的也是这个文件!

       AndroidManifest.xml是主XML文件,是每个应用都必须定义和包含的,它描述了应用的名字、版本、权限、引用的库文件等等信息,这里面基本是没有要汉化的,但是极个别软件的软件名,或是个别单词会存在于这个主XML中!

       classes.dex是java源码编译后生成的java字节码文件,就是整个软件的代码文件。

       如果当你汉化软件时,arsc和xml文件你都汉化了,但是软件中还有没汉到的,那就肯定在dex文件中了。

                               开始汉化

1.通过解压缩工具(winrar,好压等)打开.apk文件

 Android软件汉化教程自己动手做.apk汉化-风君子博客

2.resources.arsc文件的汉化

          打开AndroidResEdit1.5,将resources.arsc拽进AndroidResEdit

Android软件汉化教程自己动手做.apk汉化-风君子博客

          下面,可以直接在“替换资源”栏输入对应的中文进行汉化

Android软件汉化教程自己动手做.apk汉化-风君子博客

        然后 保存文件,替换原有的resources.arsc文件,AndroidResEdit支持字典导入和导出。

3.重新压缩,签名,查找遗漏的单词

       将文件重新压缩,如图,全选文件,点鼠标右键,压缩为.zip文件,这一步注意不是压缩整个文件夹,而是压缩这几个文件。

Android软件汉化教程自己动手做.apk汉化-风君子博客

       这时,要把文件中原有的签名删掉,用winrar或好压等软件还要打开.zip,签名文件在META-INF文件夹下,进入目录,将CERT.RSA和CERT.SF这两个文件删掉。

       把.zip文件扩展名改为.apk,用AndroidResEdit进行签名(“签名”,选择文件,“立即签名”)

       将.apk文件安装在手机或模拟器上,运行软件,查看没有汉化到的单词

4.解压.apk文件,汉化.xml文件,包括Res文件夹里的.xml文件,再次进行压缩、签名、查漏

       .xml文件汉化和resources.arsc文件汉化方法一样,也是用AndroidResEdit

        完成resources.arsc文件和***.xml文件的汉化后,看看还有没有单词和语句漏汉,若有的话,且在resources.arsc文件和***.xml文件中找不到,那么这些单词和语句基本就在classes.dex文件里,此时需要对classes.dex进行汉化。

5.class.dex文件汉化

         classes.dex是java源码编译后生成的java字节码文件,就是整个软件的代码文件。要对DEX文件进行汉化,就需要用Xtemp先对dex进行反编译,也就是解包dex文件。

         把classes.dex文件放到Xtemp目录下

Android软件汉化教程自己动手做.apk汉化-风君子博客

        把classes.dex拖拽到dex.bat上,按“1”,就会自动解包了,等出现如图内容时,就说明解包成功。

        上述是在windows7系统下的操作,xp用户的操作略有不同,xp用户请在C盘根目录下创建一个android目录,将xp版本的dex解包工具Xtemp文件夹放到android目录下,如下图。

Android软件汉化教程自己动手做.apk汉化-风君子博客

       解包完成,就会在Xtemp目录下看到一个新生成的classes文件夹,打开classes文件夹的下级目录,我们会看到很多.smali后缀的文件,这些以.smali为后缀的文件就是反编译后的文件了,也就是我们要汉化修改的文件。由于文件很多,查看很不方便,这时就要用到NotePad++了,NotePad++可以在众多文件中查找特定字符。

      首先打开Notepad++(若软件打开后为英文,打开Settings——Preferences,在general–Loclization处选择中文即可),然后选择上方菜单栏中的“搜索”,选择“在文件中查找”,设置好查找目录为classes文件夹,查找目标为用const-string或没有汉化到的单词,点击“全部查找”。

Android软件汉化教程自己动手做.apk汉化-风君子博客

      双击搜索结果中的黄颜色区域,即可跳转至该单词、语句的字段,进行修改(不要动双引号)。

Android软件汉化教程自己动手做.apk汉化-风君子博客

       修改之后点“格式”->以UTF-8编码,“格式”->以ANSI编码(这一步是为了防止汉化出现乱码问题)

完成后保存,注意const-string后面的不一定是要汉化的,最好对照之前遗漏的单词

将classes文件夹拖到dex.bat上,然后按2,开始打包,生成一个新的out.dex文件,只需重命名为classes.dex替换原文件即可。

 

       XP下的用户在打包dex时,请将classes文件夹拖拽到redex.bat上,会自动在同目录下产生一个out.dex文件,只需重命名为classes.dex替换原文件即可。

6.再次进行第2步,进行文件压缩和签名,完成汉化

 

 

汉化工具下载       AndroidResEdit下载

                             Notepad++下载

                             Xtemp下载