今天折腾了个有意思的活儿——把那个挺好用的国外全科医生App给汉化了。这东西查医疗知识挺方便,但满屏英文看着真费劲,家里老人更用不了,说整就整!
第一步:准备家伙事儿
我先在电脑上装了反编译App的必备工具。试了好几个:
- apktool:这个主力,拆包打包全靠它。官网下了最新版,第一次运行还报错,折腾半天发现是Java环境没配真是离谱。
 - MT管理器:手机上看代码方便点,但大工程还得电脑来。
 - Notepad++:改代码轻快,比记事本强百倍。
 
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
工具齐活,再从论坛扒了这App的原始安装包。版本选的新点的,怕老版有坑。
第二步:扒开看个明白
命令行敲了个 apktool d original_*,哗解出一堆文件夹。核心在/res和/smali里:
- res/values/*:大部分界面文字在这儿,一堆英文词条。
 - smali代码:有些字符串直接嵌代码里,像弹窗提示啥的,得挨个翻。
 - 图片资源:图标带英文的也得换,比如"Prescription"这种。
 
翻*时眼都花了,三百多条!
第三步:动手翻译
- 从开刀。原句"Check Symptoms"直接改成"检查症状"。遇到专业词像"Hypertension"老老实实查成"高血压"。
 - 代码里的硬骨头在smali文件夹。用Notepad++全局搜"dialog_message",找到弹窗那句"Are you sure to exit?",替换成"确定要退出吗?"。关键得找对引号里的内容,手一抖改错代码就崩。
 - 图片处理简单,用PS把带英文的图标P掉,生成中文版塞回res/drawable。
 
翻译最耗时间,医学名词不敢乱翻。谷歌翻译帮了大忙,但碰上像"Dysmenorrhea"这种还得翻资料确认是"痛经"。
第四步:缝回原样
敲命令 apktool b decoded_folder -o new_*。第一次打包报错!提示某个xml格式不对,检查发现中文引号被转义成"了,手动改回来才过。
第五步:签名上阵
没签名安装不了。用keytool生成个测试证书:
keytool -genkey -v -keystore * -alias test -keyalg RSA -validity 10000
然后上jarsigner:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore * new_* test
完事儿再用zipalign优化下对齐,不然启动慢。
测试
装到旧手机上跑一遍:
- 主界面汉化 ✓
 - 症状查询 ✓
 - 但发现用药提醒页面有个按钮文字挤出去了!应该是中文太长,回头得调整布局文件。
 - 还有个冷门功能页漏翻了两句,拿小本本记下来。
 
虽然有点小瑕疵,但核心功能都能用了!老人试了直说比英文版顺眼多了。
整个折腾下来六七个小时,最累的就是查词和测试。下次汉化得先搞个翻译对照表,效率能高点。不过看着满屏中文特有成就感——技术这玩意儿,搞成了就是爽!
