多语言展示
当前在线:1624今日阅读:138今日分享:34

Android Apk软件汉化详解攻略

工具/原料
1

我们需要用到的软件有:
1. APKtool 和 APKSign,可以去安卓网下载;
2. Java(TM) SE Development Kit,即JDK;
3. UltraEdit或其他文本编辑软件;
软件介绍:

2

1是APK编译和反编译以及签名工具;
2是Java环境支持,用以支持编译签名工具;
3是文本编辑软件,用来修改XML和Smali;

步骤/方法
1

软件反编译解包 因apk反编译和签名软件均需要java环境支持,所以要先安装JDK,具体操作网上很多,不再赘述。 使用APKtool对软件进行解包,这里我们使用Dodo APKTools,可以去安卓网寻找。在这里,我们假设软件为aaa.apk,操作如图,选定apk文件,设定好输出目录,点击反编译apk即可。保存位置中找到一个名为'aaa~1.apk.decode'的文件夹并打开,这时软件的所有文件都呈现在我们面前。

2

XML文件的汉化 找到文件夹中的找到\res\values\中的strings.xml文件,使用Ultraedit打开,将***中间的***全部修改成汉语保存即可。接下来参考上述方法将下列文件夹中xml文件相关部分也全部修改成汉语: ../res/values/arrays.xml ../res/xml/下的xml文件 ../res/layout/下的xml文件 一些简单的软件仅需要xml汉化后即可完成全部汉化,此时可参考下面会列出的编译打包以及签名方法重新打包签名,即可安装使用。

3

其他文件汉化 如果xml汉化后发现并没有全部汉化,可以接着进行这一步。这里开始我们以一个扫描工具scan2pdf为例进行说明。 打开反编译后的文件夹,发现在“assets”文件夹中包看着几个html文件,根据文件名我们可以看出这是此软件的帮助文档。 1.使用UltraEdit打开help文件,如下图所示:2.参考软件显示的格式(如图),将help.html文件中对应的英文翻译为汉语。提示:
为换行符,

则表示中间空一行,可以根据自己意愿进行添加删减。 3.下面两行蓝色文字是超链接,分别指向scan.html和pdf.html,我们需要这两个文件也进行汉化。打开scan.html后发现最下方有如图语句: 将“Back”改为“返回”,而前面的“<”则不要修改或删除。 此时,我们已经完成了大部分的汉化工作。你可以将软件编译并签名后,再装到手机上,看看效果。使用某些功能,找出开没有翻译的部分。

4

对smali文件进行翻译 我们在手机上打开此软件后会发现,基本上所有的界面都翻译完毕,但当你选择“删除页面”时却出现如下图所示的英文对话框,这些文字就存留在那些smali文件中。 下面我们就开始汉化smali文件: 1.将所有的smali文件拖到UltraEdit中,使用“Ctrl+F”快捷键调出“查找”界面(如下图),将“查找范围”设置为“所有打开的文件”,之后点击下一个。找到后将其修改为“删除页面…”即可。2.当然我们可以根据我之前提到的方法进行搜索,就是在查找中输入“const-string”,点击“下一个”,每改好一处就按“F3”查找下一个,继续更改。 3.当所有相应的英文都改成汉语后,我们就可以保存文件了。应注意:smali文件不支持汉语编码,因此在保存时我们应该选择“另存为”,在弹出的对话框的“格式”中,选择“UTF-8-无BOM这一项,直接覆盖保存即可。4.将smali文件汉化完成后,整个汉化工作也就完成了。不过我们可以在先前的help.html中加入自己名字,让大家知道这是自己的成果。 5.某些软件打开后会有许多类似下图所示的“values-**”文件夹,这就是各种国家的语言。Values-zh-rCN就是简体中文,Values-zh-rTW这是繁体中文。我们可以删除除了“values”之外的那些“values-**”文件夹,这样就做到了精简语言的效果。 在汉化时,我们也可以新建一个名为“Values-zh-rCN”的文件夹,参照其他国家语言将“values”中对应的文件复制到Values-zh-rCN中,再进行翻译。这样我们就可以得到只含有英语和汉语两种语言的软件了。 如果直接在values中汉化,则会删除英文,在“设置”中选择“English”后软件依然为简体中文。

5

编译、签名、安装、享受成功的喜悦!1.使用apksign选择“生成APK文件目录”后点击“编译APK”。随后会生成一个新的apk文件;2.点击apktool软件下方的“APK签名”按钮。选择刚刚新生成的APK文件和签名文件保存目录;之后点击“制作签名”。签名完毕后会弹出签名制作成功的对话框并生成名为文件名为aaa~2_signed;3.

6

7

8

大功告成将软件传到手机安装后就会发现软件变成了汉语。然后就尽情享受成功的喜悦吧!

注意事项
1

1.直接使用windows自带的记事本进行编辑可能造成编码错误导致汉化失败,因此建议使用专业的文本编辑工具,像editplus、notepad++,甚至制作网页用的dreamweaver类的软件都可以使用;

2

2.翻译软件的时候,可以先在手机上装好软件,然后参照手机上面显示的英文进行汉化,以免删改错误;

3

3.涉及到app_name字段一般不建议更改之后,更改后可能会出现软件无法使用的问题;

4

4.请不要删去原作者名字,可以把汉化者的名字附在软件作者后面;

5

5.APK就是一个压缩文件,只不过扩展名由ZIP变成了APK而已。使用好压、WinRAR等加压软件就可以将其解压缩,但重新打包的时候不能用压缩软件直接打包,必须重新编译;

6

6.暂时没有了。

其他资料

关于apk的文件结构 APK的全称是Android Package,也就是Android安装程序包。APK和塞班(Symbian)系统的Sisx格式软件很相似,Apk是Android SDK编译过后打包而成的。 在得到的文件中会有一个DEX,DEX文件是Dalvik VM Executes的缩写,是Android Dalvik执行程序。但它不同于JAVA ME的字节码,而是采用Dalvik字节码。 下面我们介绍一下APK文件的结构: 1.META-INF ——这与Jar文件中的META-INF相同。 2.RES ——此文件夹存放着应用程序的资源文件,像图标,界面设置,语言等。 3.AndroidManifest.xml——这是程序全局配置文件 4.Classes.dex ——这是Dalvik字节码 5.Rescourse.arsc——编译后的二进制文件,程序语言就存放在这里,我们可以使用强制汉化工具将这个文件中的英语翻译为汉语。这对于某些无法正常使用APKtool进行反编译的程序很有用。 END

推荐信息