今天得跟大家唠唠我前阵子捣鼓的一个事儿,就是给一个叫“青青草原”的安卓应用做了个汉化。起因嘛也挺简单。我侄子迷上个叫“青青草原”的App,据说是他同学推荐的,说是里面内容挺有意思,能学到不少东西,还能互动啥的。但这玩意儿,原版是英文的,小家伙瞅着费劲,老跑来问我这词啥意思,那句讲啥。问的次数多了,我就寻思着,干脆自己动手,给它整个中文版出来,也算练练手。
说干就干。第一步,那肯定是得先把这App的安装包给弄到手。我当时是在一个还算靠谱的国外网站上找的,下载了那个叫APK的文件。这玩意儿就相当于Windows上的exe安装程序,安卓手机就认这个。
第二步,就得准备家伙事儿了。搞安卓汉化嘛有几样东西是少不了的。我用的是圈内比较常见的那个叫啥来着...对,APKTool。这玩意儿能把APK文件给拆开,里面的东西就都能瞅见了,也能把改好的东西再重新打包回去。然后还得有个文本编辑器,我用的是Notepad++,用着顺手,还能显示行号,方便对照。
家伙事儿备齐了,就开始拆包。我打开电脑,把那个APK文件往APKTool的工具目录里一放,然后打开命令行窗口,切换到那个目录,敲了一行命令,大概意思是“apktool d *”(xxx就是那个文件名)。回车一按,工具就自个儿开始忙活了,屏幕上刷刷刷地跑代码,没一会儿,就在旁边生成了一个跟APK文件名一样的文件夹。点进去一看,好家伙,里面的目录结构、代码文件、图片资源、还有最重要的——那些文字资源文件,都给解出来了。
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
最关键的一步来了,就是找那些需要翻译的英文句子。一般安卓App嘛这些文字都放在一个叫values
的文件夹下面,里面有个文件。我用Notepad++打开一看,密密麻麻全是英文,夹杂着一些代码标签。比如:
<string name="app_name">Green Prairie</string>
<string name="welcome_message">Welcome to the prairie!</string>
<string name="next_button">Next</string>
看到这些,心里就有数了。接下来就是纯体力活了。我新建了一个文件夹,叫values-zh-rCN
,这是安卓系统认简体中文的特定文件夹名。然后把原来那个values
文件夹里的文件复制到这个新文件夹里。就打开这个复制过来的,对着那些英文,一句一句地翻译成咱中文。比如上面那几句,我就给改成:
<string name="app_name">青青草原</string>
<string name="welcome_message">欢迎来到大草原!</string>
<string name="next_button">下一步</string>
这过程可真是个细致活,有些词儿还得琢磨半天,咋翻译才地道,才符合咱中国人的说话习惯。特别要注意的是,那些%s
、%d
之类的占位符可千万不能动,那是程序动态填内容的地方,动了App就可能出错。还有些HTML标签,比如<b>
加粗啥的,也得保留。
有时候不光是文字,有些图片上也带着英文,比如一些按钮图片或者介绍图。那还得用P图软件,我用的是GIMP,免费又好用,把图片上的英文抹掉,再打上中文,尽量保持原来的风格。这个也挺费神的,得有耐心。
等所有能找到的文字都翻译完了,图片也处理好了,就到了重新打包的环节。还是在命令行窗口,敲另一行命令,大概是“apktool b xxx -o xxx_*”(xxx是之前解压出来的文件夹名,xxx_*是新生成的文件名)。工具又是一阵忙活,生成了一个新的APK文件。
这还没完!重新打包出来的APK文件,手机是不认的,直接安装会提示“安装包已损坏”或者“未签名”。所以还得给它签个名。我用的是一个叫“APKSigner”的小工具,或者用Java自带的jarsigner也行,得先生成一个自己的签名密钥,然后用这个密钥给APK文件盖个章。签完名之后,这个APK才算是“正经”的了。
一步,就是把这个汉化好的APK安装到我自己的备用安卓手机上试试看。先卸载掉原来的英文版,然后安装咱自己汉化的版本。安装成功后,我点开App,看到原来那些洋文都变成了亲切的中文,界面也都是咱熟悉的方块字,心里那叫一个舒坦!我仔细把App的各个角落都点了一遍,看看有没有漏翻译的,有没有翻译得不通顺的,或者有没有因为文字长度变化导致界面错位的。发现问题就记下来,再回到电脑上修改,重新打包,签名,再安装测试,来来回回折腾了好几遍。
整个“青青草原安卓汉化”的过程虽然有点繁琐,特别是翻译和反复测试那部分,但看到成果,还是挺有成就感的。尤其是看着侄子玩着我汉化的App,能顺畅地理解里面的内容,乐呵呵的,感觉之前那些功夫都没白费。也算是自己动手,丰衣足食了一把。这过程也让我对安卓App的内部结构有了更深的了解,挺值的。