大家今天就来扯扯我之前瞎折腾安卓汉化的那点事儿。这事儿,说难不难,说简单也真不简单,反正就是费点功夫。
起因:为啥要汉化?
起初,就是发现有几个国外的小工具App特别好用,功能也对我胃口,但就是没中文。英文,勉强也能看懂,但用起来总觉得隔着一层,不爽快。想着自己动手,丰衣足食嘛就动了汉化的念头。
准备工作:找家伙事儿
一开始我以为挺简单的,不就是翻译几个单词嘛后来一查,嗬,还真不是那么回事。你得有个能修改App内部文件的工具。手机自带的文件管理器那是指望不上了,权限不够,也看不到里面的门道。
我最开始用的是一个叫MT管理器的玩意儿。这东西挺强大,能直接查看APK安装包里面的东西,什么代码、资源文件,都能给你列出来。类似的工具还有别的,比如RE管理器啥的,但我用MT顺手了。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
动手开搞:摸索过程
有了MT管理器,我就开始正式捣鼓了。步骤大概是这样的:
第一步:找到目标APK文件
这个简单,就是你已经安装的那个App的安装包。MT管理器可以直接提取已安装应用的APK,或者你也可以从网上下载原版APK。
第二步:解开APK看看里面有啥
用MT管理器打开APK文件,你会发现它像个压缩包。里面有一堆文件夹和文件。我们要找的主要是存放文字内容的地方。一般来说,这些文字都在一个叫的文件里,或者是在res/values/*
这样的XML文件里。
刚开始我直接就奔着去了,用MT管理器自带的文本编辑器打开,果然,一堆英文句子,旁边还有对应的标签名。比如<string name="app_name">Cool App</string>
,这个Cool App
就是要翻译的。
第三步:翻译,翻译,还是翻译
这一步最枯燥,也最考验耐心。我就是对着那些英文,一句一句地改成中文。有些词还直接翻译就行。有些就得结合App的功能和上下文来理解,不然翻译出来可能牛头不对马嘴。
有时候,文字不仅仅在里。有的App,它的文字可能分散在不同的values-xx
文件夹下(比如values-en
代表英文),或者更坑的是,有些文字是写死在代码里的。遇到写死在代码里的,那对我这种小白来说就头大了,基本就放弃那部分了,咱这叫“长话短说”,太复杂的就不碰了。
我还遇到过打开直接翻译的情况,MT管理器也支持这个,但感觉没有直接编辑XML文件来得直观。
第四步:保存,打包,签名
翻译完了,就得保存。MT管理器会自动帮你把修改后的文件打包回APK。但这里有个关键点,修改后的APK是不能直接安装的,因为它破坏了原来的签名。你需要对修改后的APK重新签名。
MT管理器一般都有签名功能,点几下就能搞定。签完名之后,会生成一个新的APK文件,通常文件名会带个“signed”或者“已签名”之类的标识。
第五步:安装测试
一步,就是把这个签好名的新APK安装到手机上试试看了。卸载掉原来的英文版,再安装我们自己汉化的版本。打开App,看看界面是不是变成中文了,功能有没有出问题。
我第一次汉化的时候,装上去就闪退了。后来才发现,可能是不小心动了不该动的文件,或者翻译的时候某个符号弄错了,导致XML格式错误。汉化这事儿,细心很重要。
遇到的坑和经验
- 编码问题:有时候翻译完,App里显示乱码。这多半是文件编码没弄对,一般用UTF-8就比较稳妥。
- 字符串长度:英文短的词,翻译成中文可能就变长了,导致界面显示不下,文字被截断或者重叠。这种情况就得琢磨着精简翻译,或者如果会改布局的话,调整下控件大小(但我一般懒得弄那么复杂)。
- 逐个测试:最好是改一部分,就打包测试一下,免得到发现出错了,都不知道是哪一步出的问题。
- 不是所有App都能完美汉化:有些App加了壳,或者有各种校验,你一修改它就罢工。这种就比较麻烦,可能需要更专业的工具和知识,比如用到什么ApkTool之类的,反编译,回编译,那就不是“长话短说”能搞定的了。
最终成果与感想
折腾了半天,看着自己手机上的App从英文变成了亲切的中文,那种成就感还是挺足的。虽然过程有点繁琐,有时候还会失败,但摸索着解决问题的过程也挺有意思。
简单的App汉化,用个MT管理器之类的工具,找对地方,耐心点翻译,注意签名,基本就能搞定。这只是我个人瞎折腾的经验,图个乐子,让一些小众但好用的App用起来更顺手罢了。要是遇到特别复杂的,那还是等官方出中文版或者找专业大神!
好了,今天就先分享到这儿,希望对同样喜欢折腾的朋友有点启发。下次再有啥好玩的实践,再来跟大家唠!