当时拍脑门决定汉化这个安卓工具,以为顶多两周搞定,没想到硬生生折腾了俩月。要不是摸出门道,差点把笔记本给砸了。

第一步就栽进坑里

直接解压apk看到*文件乐坏了,心想字符串肯定都在这儿堆着。反手扔进AXML编辑器,结果满屏资源ID看得眼冒金星。更绝的是菜单按钮的”Save”死活搜不到,急得我半夜三点在客厅转圈圈。后来把apk扔进Jadx反编译才看到真相——这破软件居然把文字全写成代码里的字符串,跟藏私房钱似的塞在java文件缝里。

我们的60天安卓汉化过程全记录(这五点经验超实用)

笨办法硬刚三周

当时心一横:不就是三百多个文件吗?撸起袖子手动替换呗!结果刚改完二十个文件,重新打包安装直接闪退。反编译一比对差点吐血:

    小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

  • 漏改了某个Fragment里的setText
  • 把%s占位符当普通汉字给翻译了
  • 手抖把true写成”真的”
  • 我们的60天安卓汉化过程全记录(这五点经验超实用)

手机架在床头自动测试,凌晨四点突然弹窗显示”你成功地卸载了”,气得我把枕头砸墙上——那是我翻译的卸载确认按钮!

神器救场发现玄机

第三周在Github翻到个脚本小子写的批量替换工具。这玩意儿虽然长得丑,但能自动过滤特殊字符和占位符。结果你们猜怎么着?跑完脚本安装报错,日志显示资源引用冲突。原来软件里三十多个”back”按键,有二十个调用*_button,剩下十几个直接写死成”back”!

布局文件埋着地雷

熬到第40天才发现大坑:所有对话框文字全藏在layout的xml里。用文本编辑器批量替换时,不小心把@id/btn_confirm也翻译成”确认按钮”,编译直接炸成烟花。更绝的是发现某个Activity里藏着彩蛋:

我们的60天安卓汉化过程全记录(这五点经验超实用)

if(getIntent().getStringExtra("secret").equals("Boom")) {

showDialog("炸你");

要没看见这段,上架当天用户点个按钮就能收获惊喜。

我们的60天安卓汉化过程全记录(这五点经验超实用)

血泪换来的五点干货

  • 别信*!先反编译看java代码,我们遇到的软件只有15%字符串在资源文件
  • 像超市进货那样检查占位符,%s、%d漏一个就崩溃(把”还剩%d天”译成”还剩d天”被测试笑半年)
  • 改*时先把@符号用[]框起来,避免把ID当文字翻译
  • 替换前备份原始编码,有次把UTF-8的文件存成GBK,所有问号方块排队跳广场舞
  • 我们的60天安卓汉化过程全记录(这五点经验超实用)

  • 测试时带台老人机,4.4系统跑出来的乱码能让你怀疑人生

看到中文界面那刻,比当年儿子开口叫爸还激动。这哪是汉化,分明是跟开发者在代码里捉迷藏。现在听见”反编译”仨字还手抖——都是让那六十天给磨的!

免责声明:喜欢请购买正版授权并合法使用,此软件只适用于测试试用版本。来源于转载自各大媒体和网络。 此仅供爱好者测试及研究之用,版权归发行公司所有。任何组织或个人不得传播或用于任何商业用途,否则一切后果由该组织及个人承担!我方将不承担任何法律及连带责任。 对使用本测试版本后产生的任何不良影响,我方不承担任何法律及连带责任。 请自觉于下载后24小时内删除。如果喜欢本游戏,请购买正版授权并合法使用。 本站内容侵犯了原著者的合法权益,可联系我们进行处理。