首页 Android软件汉化精简去广告优化教程

Android软件汉化精简去广告优化教程

举报
开通vip

Android软件汉化精简去广告优化教程Android软件汉化/精简/去广告/优化教程 * 引用、转载请注明出处:XDA智能手机论坛-bbs.xda.cn-iKira!$ * 汉化其实不难,难的是持之以恒,祝各位机友学有所得。 准备工作 下载上面的附件“Android汉化工具.zip”,解压。5\ 安装Java环境(Java_6 Update 31.exe); 2、安装Microsoft .NET Framework(Microsoft .NET Framework_2.0.exe);& 以上两个必须要安装,否则很多汉化工具会无法使用、各...

Android软件汉化精简去广告优化教程
Android软件汉化/精简/去广告/优化 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 * 引用、转载请注明出处:XDA智能手机论坛-bbs.xda.cn-iKira!$ * 汉化其实不难,难的是持之以恒,祝各位机友学有所得。 准备工作 下载上面的附件“Android汉化工具.zip”,解压。5\ 安装Java环境(Java_6 Update 31.exe); 2、安装Microsoft .NET Framework(Microsoft .NET Framework_2.0.exe);& 以上两个必须要安装,否则很多汉化工具会无法使用、各种报错(如汉化狂人、apktool、smali等),切记!! 在电脑上安装都很简单的,其它的就不过多阐述了。 apk包文件结构 *** 汉化前先了解下apk安装包的结构。***+ j* J apk安装包其实就是一个Zip压缩文件,所以可以用WinRAR、WinZip之类的压缩软件来打开,建议大家将apk这个扩展名关联到压缩软件,双击默认以WinRAR打开。 关联方法: 打开WinRAR——选项——设置,如图: 2、切换到设置窗口的“综合”标签,在“用户自定义压缩文件扩展名”下面填上apk,然后点确定。 这里以固件管家(ROM Manager)的apk安装包为例讲解目录结构,如图: 文件目录结构 Assets com- META-INF -CERT.RSA* -CERT.SF: r -MANIFEST.MF res, -drawable -drawable-hdpi -drawable-ldpi -drawable-mdpi -drawable-xhdpi0 _! g% \, ?8 S( } |, L -layout -menu3 -xml0 AndroidManifest.xml classes.dex resources.arsc8 J " I8 ?/ L2 r' H1 B! {6 _ * assets目录:通常存放的是一些附加文件,例如txt、html等说明文档、字体文件、附加图片等(游戏apk安装包有些差别。某些软件该目录下的一些文本文件需要汉化); * com目录:通常也是存放一些附加组件,例如PayPal等(这个目录一般不会有要汉化的内容,不要管它); * META-INF目录:里面存放的就是签名后的证书; * res目录:存放的大部分是一些图片资源和界面的布局文件。drawable和drawable-**目录存放的是各种不同分辨率的图片资源。layout、menu、xml目录存放的是软件界面的布局文件,包括菜单、窗口、主界面和设置界面等。 * AndroidManifest.xml文件:记录了软件的版本号、所需要的权限、引用的库文件、类等信息。极少数情况下,某些软件的软件名称、个别设置选项等文字内容在该文件中。 * classes.dex文件:这是Java源码经过编译后的文件,有些软件的选项和说明内容的文字会在这个文件里,需要对其解包后进行汉化。 * resources.arsc文件:这个是经过编译后的资源文件,存储着各国语言,大部分需要汉的内容就在这里。 PS1:某些软件的选项按钮是通过调用图片实现的,图片上的文字就需要Photoshop之类的图片编辑软件来修改,这些图片资源一般都在drawable和drawable-**目录里。 PS2:某些软件apk安装包会有个res\raw目录,这里通常存放的是一些说明文件,如txt、html、hml等 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 文件,这些文件里的文字内容用Notepad++ Portable(帖子附件里有)之类的文本编辑器就可以修改(Windows自带的记事本也可以,不过不推荐用这个)。 签名 方法一 下载帖子附件“Android汉化工具.zip”,解压。推荐将解压出来的“sign”文件夹复制到D盘根目录(后面的教程统一以复制到D盘根目录为前提进行讲解)。 2、例如要签名的apk包名为“1.apk”。先将“1.apk”文件复制到d:\sign目录里。 下面有两个方式: * 用鼠标将“1.apk”拖到“Sign.bat”批处理文件上面自动签名,签好的文件会保存在同一个目录里(“1.apk.apk”文件)。 * 另外,也可以手动在CMD命令行窗口中输入命令来签名:/ 打开命令行窗口,进入d:\sign目录: 开始菜单——运行,输入cmd,在弹出的CMD窗口中输入 d: 回车 cs sign 回车* R$ g7 X/ S/ u( m 如图:+ x$ 再输入: java -jar signapk.jar testkey.x509.pem testkey.pk8 1.apk 1-signed.apk 如图: 签完名输出的文件“1-signed.apk”传到手机或者用同步软件即可安装。. N 方法二/ * 用这个方式签名最为简单,傻瓜式操作。 下载附件“Android 汉化工具.zip”,解压。打开解压出来的AndroidResEdit(系统需要安装 NET Framework,没安装的机友请自行百度搜索下载安装)。 2、如图,打开工具栏中的“签名”,即可在签名窗口中选择文件进行签名,操作很简单。: 注:签名之前最好先将META-INF目录下的证书文件全部删除,以免重新签名后可能出现不能安装的问题。 准备工作和基本须知讲完了,下一楼层开始讲如何使用apktool嵌入汉化。 apktool嵌入汉化 N) O4 v1 N3 q. M4 C( t5 R0 j/ z   之所以把apktool放到前面来讲,主要还是因为用apktool来汉化会更加快而直观。用AndroidResEdit或汉化狂人的方法放到后面讲,算是做一个补充,现在已经很少人用了。   apktool汉化的优点已经众所周知,可以精简语言、汉化更彻底、反编译后可以调整布局文件、相比直接修改resources.arsc文件的方法,用apktool修改出的apk出问题的几率会更少。1 l3 b9 A" e# s9 [: \" N Y   网上已经有很多apktool的衍生工具,有的甚至集成了签名、反编译、编译、优化等各种一键功能。不过个人不推荐初次接触汉化的人用这些工具。每一步都自己动手,即使中间某些环节出现了问题,也更加好找原因。   这里给出apktool的主页:http://code.google.com/p/android-apktool,想要长期做汉化的机友可以经常留意下,及时更新版本。 开始汉化前,请先安装Java环境。必须要安装,apktool、汉化狂人、AndroidResEdit、baksmali都需要Java环境,否则不能使用,切记! 安装文件在帖子开头的工具包里有。 下面回归正题,开始讲解apktool汉化。 一、嵌入中文; \7 k& S$ O. a4 f% H. O0 o) ]   以汉化多键开关(SwitchPro)为例。用apktool嵌入汉化其实很简单,就三个步骤:反编译——翻译+修改——重新打包(其中翻译这一步就是要嵌入中文的翻译)。& {7 {$ F. R) ^0 ^" |; l& i * 下载附件“Android汉化工具.zip”,解压。把apktool文件夹复制到D盘根目录。- R6 y$ l) L9 K$ {! k; D# [% m- D * 将需要反编译的apk包复制到apktool文件夹里(D:\apktool),将其重命名为1.apk(名称随自己定,1.apk只是为了方便讲解)。 * 开始菜单——运行,输入cmd,打开CMD命令行窗口。8 t3 h7 ~7 V& U( p& w# Q/ M, v' }5 m * 在CMD命令行窗口中用cd命令进入d:\apktool 进入D:\apktool后再输入命令7 [! ~% Z" f/ F B% Q; ? apktool d 1.apk 1 如图: 注释:d是反编译命令“decode”。中间的1.apk不解释了,你们懂。最后的“1”是反编译后的文件的存储目录,即D:\apktool\15 * 进入D:\apktool\1\res目录,如下图: 各个目录的作用在帖子开头已经解释过,这里不重复了。语言文件strings.xml就在values文件夹里(某些软件还会有attrs.xml、plurals.xml这两个语言文件)。attrs.xml里一般是一些选项的文字内容,例如打开一个设置选项后,弹出一个列表供你选择,列表中的选项的文字就在attrs.xml里,其余的文字内容基本都在strings.xml里。" O/ 若要嵌入简体中文的话,我们要在D:\apktool\1\res这个目录新建一个文件夹“values-zh-rCN”,看文件夹后缀就知道,zh-rCN表示中国内地。要嵌入繁体中文的话,要在D:\apktool\1\res这个目录新建一个文件夹“values-zh-rTW”。 然后再将上面讲到的values文件夹里的语言文件复制到values-zh-rCN和values-zh-rTW里,将里面的英文翻译成简体中文和繁体中文就可以了。 因为现在要汉化的SwitchPro只有strings.xml文件,所以我们需要将strings.xml分别复制到values-zh-rCN和values-zh-rTW里就行了,如图: * 到这一步,就可以开始翻译了,打开附件“Android汉化工具.zip”中的Notepad++Portable,用Notepad++Portable打开D:\apktool\1\res\values-zh-rCN和D:\apktool\1\res\values-zh-rTW中的strings.xml文件,如图:$ 我们只需要将”这一行即可。: G; o! a ~9 z1 r& K b( j( b   目前Android常用的广告供应商有两家,一家是Google,一家是Admob,不过Admob已经被Google收购,所以基本就是同一家供应商,但两者的SDK还是独立的。 一般常见的广告源如下: Admob:& t! n7 B1 }+ V: N# Q; A http://r.admob.com/ad_source.php http://mm.admob.com http://api.admob.com Google:) s) R9 R1 F# _" v0 G- N: q http://pagead2.googlesyndication.com/pagead/afma_load_ads.js 常见的广告布局代码如下: Admob: . }9 O+ W% |, d' ?+ T, k. U6 `/ t4 P Google: * T+ u4 \2 J j& ^0 v# K) k) [- D, L 8 j/ Q" l% e5 R: v7 o PS:上面的广告源和布局代码只是个范例,实际去广告时还是需要自己 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 经验来查找广告源和布局代码。例如一些软件在主界面显示广告,那么广告的布局代码通常会在res\layout\main***.xml之类的布局文件里,仔细找找,或者活用Notepad++Portable来搜索。 4 J. O' `+ _ U( n: e3 A   去除apk广告的必要工作:用apktool反编译apk包,方法上面已经讲过,这里不重复了;提取apk包中的classes.dex,用baksmali+smali工具解包,方法上面也讲过,这里也不重复了。% p1 \) Q1 j# E! T. ?* s" @ -------------------------------------------------------------------------------------------- , }: Q: a# s# } 前戏完了,下面开始讲解:6 u# f! \4 F$ G( U' p. i 一、先去除广告源0 ?; t7 X4 C: E' H- S   一般广告源都在D:\baksmali+smali\classes\com\google\ads目录下的文件里,因此我们可以使用Notepad++Portable来搜索,同时按Shift+Ctrl+F键调出搜索窗口,输入搜索内容http://(因为广告源都是链接,所以搜索http://开头),将搜索目录定位到D:\baksmali+smali\classes,再点击全部查找,如图: 如上图,这几处都是广告源: D:\baksmali+smali\classes\com\google\ads\AdView.smali 里的 “http://schemas.android.com/apk/lib/com.google.ads”! p1 U0 @! m' f) o& S D:\baksmali+smali\classes\com\google\ads\InstallReceiver.smali 里的 “http://a.admob.com/f0?”8 e. p( t9 F/ e2 `7 H' i D:\baksmali+smali\classes\k.smali 里的 “http://www.gstatic.com/afma/sdk-core-v40.js”. @0 N5 S$ }1 T/ j   找到广告源后就好办了,将这些地址修改成如“http://0.0.0.0”或“http://192.168.1.1”就可以让软件无法下载广告数据。   广告源修改完成,可以重新打包回clesses.dex文件,方法上面有讲到,这里不重复了。4 R1 |0 e2 y. ^7 c$ o0 Z5 U 二、修改布局文件,隐藏广告区域   一开始就说了要用apktool反编译apk包了,这里不重复了。   打开Notepad++Portable,同时按Shift+Ctrl+F键调出搜索窗口,输入搜索内容“id/ad”、“AdView”或者“GoogleAdView”,要是搜索不到的话,可以把软件装上,看看广告在软件的哪个位置,例如在主界面的话,一般会在res\layout目录下主界面布局文件里,具体看看文件名就知道了。" w* j7 x, P3 @" d5 ^2 Q   这里我们以搜索“id/ad”为例,如图: 双击下方的搜索结果即可打开相应的文件,如图上图,我们搜索到的广告布局代码是: 4 [; I+ D* X- {) {$ g- F6 W   这里定义了广告的宽度和最大高度,我们只需要将 android:layout_width="fill_parent" 、android:layout_height="70.0px" 和 android:layout_height="70.0px" 改成 android:layout_width="0.0dip" 、android:layout_height="0.0dip" 和 android:maxHeight="0.0dip" 就行了。另外,也可以直接在中间加入 android:visibility="gone"(定义广告的可见性,gone表示不显示):. x3 t: }$ X, H. x $ G0 ?, {7 s: t. l* J % O' Y" 6 ]4 Q) ]& s) g( z9 ?: f/ k 将所有搜索到的布局代码定义的宽度和高度修改后,就可以用apktool重新编译打包了,然后将刚刚重新打包的classes.dex文件拖回到重新编译打包好的apk包中,签名后即可安装。 zipalign对齐优化& y+ j8 U8 w3 K% @, m , o+ N3 s- U0 v5 W8 q# @7 W   zipalign优化是汉化、去广告等所有要修改的事完成并签完名后才需要做的步骤,目的是提高执行效率。5 u# w7 |% D9 Q# i& f6 k- f4 K 9 L7 P0 U4 n3 s 方法如下: 下载附件“Android汉化工具”,解压。将里面的zipalign文件夹复制到D盘根目录;: }. s2 A5 {3 T3 `' z( X * 将需要优化的apk包复制到zipalign文件夹(D:\zipalign),将apk包重命名为1.apk(方便讲解);& O# x, V z5 H, n * 打开CMD命令行窗口,进入D:\zipalign,输入命令 zipalign -v 4 1.apk 1-zipalign.apk,如图:7 优化后的文件1-zipalign.apk会存储在同一个目录中,可以直接安装。 汉化狂人/AndroidResEdit汉化   用“汉化狂人”或“AndroidResEdit”汉化很简单。两个软件都是出自同一个作者之手(汉化浪子),界面功能都差不多,因此这里以“汉化狂人”为例讲解,AndroidResEidt就不说了,操作都差不多的。+ ~( W6 z7 Z% G9 t6 R 直接进入正题。 该方法汉化分三个部分 汉化resources.arsc文件:" `) u, i3 o) W$ V- G0 s   提取apk包里的resources.arsc文件,打开汉化狂人 -> 文件 -> 打开文件,打开提取出来的resources.arsc文件,如图: 文件载入后所有可以汉的文字内容都会在列表中出现,如下图:* l0 M3 Y1 `-  如上图,双击要汉的部分,在弹出的窗口中输入中文后再点确定即可。   所有内容全部汉完后,打开文件 -> 保存汉化文件,保存汉化好的resources.arsc文件,然后再将汉完的resources.arsc文件拖回apk包里。如图: PS:一些有下划线、中间没有空格、路径之类的内容不用汉,这些不是语言内容,多汉了软件会出问题。 4 ]5 [) t; w, w 2、汉化AndroidManifest.xml文件、res\layout目录下的xml布局文件、xml目录下的布局文件:: q1 }/ j$ m$ i% J   在汉完resources.arsc文件后,可以先将resources.arsc文件拖回apk包里重新签名然后安装到手机,看看还有哪些文字没有汉化,若有的话,一般都会在AndroidManifest.xml文件、res\layout目录下的xml布局文件、xml目录下的布局文件里面,这些文件都可以用“汉化狂人”和“AndroidResEdit”打开,可以汉的资源也会在列表中显示,汉化方法和resources.arsc文件一样,汉完后保存,然后替换apk包里原来的xml文件即可。& Y) L4 w; i- V' w 3、汉化classes.dex文件:* z/ S1 |- {/ t   若上面两步汉完后仍有文字未汉,那么基本上就在classes.dex文件里,汉化方法前面已经讲到,这里不重复了。 4 S8 |/ I$ N0 _1 d( l/ i   所有文件都汉化后,全部拖入apk包中替换原来的文件,然后在重新签名即可安装。
本文档为【Android软件汉化精简去广告优化教程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_131728
暂无简介~
格式:doc
大小:3MB
软件:Word
页数:26
分类:互联网
上传时间:2012-12-11
浏览量:138