〖全民汉化〗Android软件汉化教程之图文第三课————APK文件结构讲解
本帖最后由 OPkyd 于 2013-11-27 11:33 编辑第三课:APK文件结构讲解
想要快速地学习Android汉化,就要掌握基础知识--apk安装包的文件夹基本结构,然后才能庖丁解牛,成为汉化大师哦。
现在就来了解下什么是apk吧,以下知识点来自网络。
APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,可以通过winrar等解压工具进行解压缩,进而进行汉化。
1、APK文件结构:
下图为常规apk文件夹结构。通常情况下大部分apk结构几乎相同,有些还会多出部分文件夹。
文件目录如下:
- META-INF
- res
- anim
- color
- drawable
- drawable-hdpi
- drawable-land
- drawable-land-hdpi
- drawable-mdpi
- drawable-port
- drawable-port-hdpi
- layout
- layout-land
- layout-port
- xml
- AndroidManifest.xml
- classes.dex
- resources.arsc
基本结构如上图所示。
多数情况都要汉化的是resources.arsc、classes.dex和res文件夹里的***.xml文件。
- META-INF文件夹里面存放的是证书文件,软件修改后需要将里面的证书文件删除(***.RSA、***.SF、***.MF三个文件),否则软件无法安装。
- res文件夹里存放的大部分是软件所需的资源及布局文件(drawable存放资源、layout、xml存放布局文件***.xml),部分需要汉化的单词、语句会在这些***.xml文件里。
- AndroidManifest.xml是每个应用都必须定义和包含的,它描述了应用的名字、版本、权限、引用的库文件等等信息。极少数软件在这个文件里会有单词、语句需要汉化。
- classes.dex文件是Java源码编译后的代码文件。通常该文件里都有单词、语句需要汉化。
- resources.arsc文件是编译后的资源文件,大多数情况下,需要汉化的单词、语句绝大多数都在这个文件里,汉化的时候首先就要看这个文件。
* 另外,有些需要汉化的***.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的软件也需要签名,不过和Symbian相比,却要简单方便得多,首先是不需要自己去申请证书,下载个签名工具就可以签名了。另外,我们从电子市场、软件官网下载来的软件都是已经签好名的,可以直接安装,这里讲到的签名,是针对软件安装包被修改过的情况(如汉化需要修改安装包内的文件,原来的签名文件就不能用了,所以要重新签名软件才能正常安装。),正常情况下不需要签名。
现在Android可用的签名工具很多,想方便点的话可以用汉化浪子出品的AndroidResEdit,这个软件自带签名包(工具在帖子附件有提供)。
签名方法很简单,删除原证书文件后(META-INF 文件夹内的***.RSA、***.SF、***.MF三个文件),打开AndroidResEdit——签名——签名apk文件,选择需要签名的apk安装包后点击“立即签名”即可。
传送门:
第一课:http://www.52pojie.cn/thread-225285-1-1.html
第二课:http://www.52pojie.cn/thread-225295-1-1.html
第三课:http://www.52pojie.cn/thread-225298-1-1.html
第四课:http://www.52pojie.cn/thread-225309-1-1.html
第五课:http://www.52pojie.cn/thread-225314-1-1.html
第六课:http://www.52pojie.cn/thread-225319-1-1.html
第七课:http://www.52pojie.cn/thread-225323-1-1.html
第八课:http://www.52pojie.cn/thread-225327-1-1.html
第九课:http://www.52pojie.cn/thread-225364-1-1.html
第十课:http://www.52pojie.cn/thread-225368-1-1.html
**** Hidden Message *****
本帖最后由 Mr丶X 于 2013-11-26 20:50 编辑
前排支持一下 推荐神器notepad++ .好好学习踏踏实实{:1_912:} 支持 学习一下
顶楼主,学习一下, 感谢分享,废话也就不多说了
学习学习。。lol..楼主。。
{:1_921:}大神速更~~~~~ 感谢分享 新人学习了 最近想研究研究apk不错 学习了