Android 汉化App技巧

最近帮别人汉化了几款app,在这我简单介绍下我所使用的方法和所遇到的坑。
一般汉化都是通过反编译app,然后修改资源文件中的String.xml,将英文改为中文。具体反编译、打包的方法请参照郭神的一篇文章
[url]http://blog.csdn.net/guolin_blog/article/details/49738023/[/url]
修改好资源文件后,在用自己的keystore打包一下,这样汉化就成功了。

上面说的汉化只能汉化一部分,这部分是app中通过string.xml定义的,那如果在代码中直接定义的一些资源该如何修改成中文呢?

我们通过apktool得到的文件夹中有smali文件,这些文件就是代码编译后生成的文件,我们直接修改这些文件就行了。很多人不懂smali的语法那该怎么修改呢?其实我也不懂,我用的方法很简单,我通过FileSeek(一款可以通过关键字搜索文件夹中文件内容并定位到该文件)设置关键字为我所需要汉化的英文,扫描smail文件夹,将其中的英文替换成中文如下图。这里要注意下替换的中文必须是Unicode编码的形式,如果直接输入中文,会在app上显示乱码。

这个网站可以在线将中文转化Unicode编码
[url]http://tool.chinaz.com/tools/unicode.aspx[/url]


扫描smail文件夹

[img]http://dl2.iteye.com/upload/attachment/0122/5127/7d3e568f-d6a8-3304-992c-826b50ef98e1.png[/img]


找到英文的位置

[img]http://dl2.iteye.com/upload/attachment/0122/5131/0d7cdb90-7217-3d78-8aa8-fca30422ff33.png[/img]


将英文替换成Unicode编码的中文

[img]http://dl2.iteye.com/upload/attachment/0122/5129/0b24e8d9-5a65-37c3-9c9a-834331dbe654.png[/img]

你可能感兴趣的:(Android 汉化App技巧)