手把手教你ROM和APK汉化_精简_去广告
教程主要分三个部分:(没有Linux,JAVA基础都可以做到)
1:强制汉化教程,是Android软件比较早的汉化方法,方法是用汉化工具在原语言(英文、或软件原带的其它语言)的基础上将单词和语句强制修改成中文。
2:是APKTool汉化、精简,美化教程,方法是用APKTool工具将软件反编译解包,直接用文本编辑工具修改语言包、精简语言包或自行添加中文语言包。 3:去广告教程。
本帖最后由 vanman 于 2011-4-27 10:37 编辑
ROM和APK汉化--精简--去广告
前言:
好久没来了今天整理个东西给ME600区的童鞋O(∩_∩)O:现在Android的软件越来越多可往往碰到的软件确是English,看不懂又不敢瞎掰?怎么办只有放弃?NO!今天开始自己汉化,Android越来越强大了,可暗藏的杀鸡也越来越多还有讨厌的广告,怎么办?今天开始自己精简软件去广告·,虽然此类材料有很多,我也搜了下以下可大多都不完整或讲解的不细。让人很难去理解,基于自己实践整理了下发上来,以下我会非常详细用图文并茂去教大家·····资源---材料---软件---来自Network,
教程主要分三个部分:(没有Linux,JAVA基础都可以做到)
1:强制汉化教程,是Android软件比较早的汉化方法,方法是用汉化工具在原语言(英文、或软件原带的其它语言)的基础上将单词和语句强制修改成中文。
2:是APKTool汉化、精简,美化教程,方法是用APKTool工具将软件反编译解包,直接用文本编辑工具修改语言包、精简语言包或自行添加中文语言包。 3:去广告教程。
汉化工具,编辑工具等,(资源来自Network) AndroidResEdit(arsc/xml汉化、签名工具) 汉化狂人(arsc/xml汉化工具)
Notepad++ Portable(dex汉化、文本编辑工具) APKTool(反编译/编译工具)
smali/ baksmali(dex解包/打包工具)
undex(dex解包/打包工具)
android-sdk_r10-windows(Androidde 模拟器) 以及本次编辑的Word文档
先从基本认识以下构架开始:
1、先了解下apk安装包的文件结构
我用WinRAR随便打开了个APK,apk安装包文件目录如下图:
APK文件目录解析:(归纳以下常见的,重要的会用自己的理解去解释)
- META-INF-----------------------------签名文件
- res--------------------------------------资源文件,(图标美化可以从这着手) - anim - color
- drawable---------------整个APK图标所在文件夹 - drawable-hdpi---------高分辨 - drawable-land---------中分辨 - drawable-land-hdpi---低分辨 - drawable-mdpi - drawable-port
- drawable-port-hdpi
- layout-------------------(界面布局xml文件所在文件夹,界面美化可从这里着手) - layout-land - layout-port
- menu----------------------(一些菜单文件所在目录)
- raw------------------------(存放帮助类文档或其他资源的文件夹,如help.html;clock.zip)
- xml---------------------(其他一些xml文件所在目录)
- AndroidManifest.xml------------是每个应用都必须定义和包含的,它描述了应用的名字、版本、权限、引用的库文件等等信息,这里面基本是没有要汉化的,但是极个别软件的软件名,或是个别单词会存在于这个主XML中!
- classes.dex-----------------------是java源码编译后生成的java字节码文件,通俗点就是整个软件的代码文件
- resources.arsc-------------------是编译后的二进制资源文件,是主要的资源文件,汉化时首先要看这个文件,最先汉化的也是这个文件!
解析下:
- 多数情况都要汉化的是resources.arsc、classes.dex和res文件夹里的***.xml文件。
- META-INF文件夹里面存放的是证书文件,软件修改后需要将里面的证书文件删除(***.RSA、***.SF、***.MF三个文件)再重新签名,否则软件无法安装。
- res文件夹里存放的大部分是软件所需的资源及布局文件(drawable存放资源、layout、xml存放布局文件***.xml),部分需要汉化的单词、语句会在这些***.xml文件里。美化源头基本上基于这里
另外,一些需要汉化的***.png图片文件、***.html文件、***.txt文件可能会在assets文件夹或res/raw文件夹内。图片文件需要用Photoshop修改,html、txt文件可以直接用Notepad++ Portable文本编辑工具修改(不建议用系统自带的记事本,这东西杀伤无数...)。
2、打包/解包
apk安装包其实就是zip格式的压缩包,只是文件扩展名改成了apk而已,所以可以直接用解/压缩软件WinRAR打开,若你的系统没有关联apk文件,请先安装WinRAR,打开
WinRAR——选项——设置——综合,在“用户自定义压缩文件扩展名”处填上apk,点“确定”保存即可。之后就可以直接双击以WinRAR打开apk安装包文件。
汉化软件的时候,不需要把整个apk安装包解包,对于需要汉化的文件,如resources.arsc、classes.dex等文件,直接用鼠标拖出来,汉完后再拖进apk安装包后重新签名就行了(签名问题下面会讲到)。 3、签名
Android的软件也需要签名,下载个签名工具就可以签名了。这里讲到的签名,是针对软件安装包被修改过的情况(如汉化需要修改安装包内的文件,原来的签名文件就不能用了,所以要重新签名软件才能正常安装。),正常情况下不需要签名。现在Android可用的签名工具很多,想方便点的话可以用汉化浪子出品的AndroidResEdit,这个软件自带签名包(工具在帖子附件有提供)。签名方法很简单,删除原证书文件后(META-INF 文件夹内的***.RSA、***.SF、***.MF三个文件),打开AndroidResEdit——签名——签名apk文件,选择需要签名的apk安装包后点击“立即签名”即可。
4、安装Java
这个是最基本的,,汉化相关的软件都需要用到Java,必须要安装,否则汉化过程中出现各种奇奇怪怪的问题不要问我。
(电脑买来处基本都有吧,如果没有自行安装个)安装地址:http://www.java.com/zh_CN
一、 强制汉化
- 强制汉化是Android软件比较早的汉化方法,主要是用汉化工具在原语言(英文、或软件原带的其它语言)的基础上将单词和语句强制修改成中文。好处是操作方便,通俗易懂,上手快,汉化速度比较快,比较适合刚接触汉化的人。缺点就是汉化的文字长度受字符限制,中文文字字符量不能超过原文的字符量(对翻译用词的准确性有一定影响),强制汉成中文后软件运行可能会不稳定(不过这种情况也比较少)。
- 通常需要汉化的文件有resources.arsc、classes.dex、***.xml这三种类型的文件,其它类型的文件稍后单独列出来讲解。
1、下面以软件“LauncherPro”为例,讲解resources.arsc的汉化过程:
① 用WinRAR打开LauncherPro的apk安装包,将resources.arsc文件拖出来,用汉化狂人打开。
注:resources.arsc用汉化狂人、AndroidResEdit都可以汉化(两者均为汉化浪子出品),不过汉化狂人有搜索功能,支持保存字典,比起AndroidResEdit来要方便很多,建议用汉化狂人汉化。另外,汉化狂人在完成汉化保存好文件后,再次修改文件时字符量会限制为当前的中文字符量,例如把Save这个单词汉化成了“保存”,把resources.arsc文件保存后,想要将“保存”修改为“另存为”是不行的,这时字符量已经限制为了2个字符。这时就可以用AndroidResEdit来修改,不过字符量限制仍然为原英文单词Save的4个字符限制。
② 打开resources.arsc文件后,可以通过搜索栏搜索要汉化的单词、语句。双击要汉化的单词、语句即可在弹出的对话框中填写中文,完成后点击“OK”即可。 如图 :
需要注意的事项:
- 有路径的不需要汉,如 图: