转自:http://www.andmoto.com/viewthread.php?tid=3873
APK 本地化/修改利器 —— 《android-apktool》
本帖最后由 花无心 于 2010-4-16 01:35 编辑
说起APK的汉化,目前大部分教程都是让用Hex Workshop或者Android ResEdit来做。但是实际操作后,就会发现:
1、Hex Workshop操作繁琐,经常出现搜不到想要修改的字符的情况;
2、Android ResEdit简单用用可以,修改稍微复杂一点就会出现整条整条丢字符串的情况;并且新内容不能比原内容长——谁能保证我的本地化语言就一定比原来的短呢?
现在好了,老外写的《android-apktool》软件,可以帮助我们把APK反编译,生成程序的源代码和图片、XML配置、语言资源等文件。我们对图片和语言资源等文件修改后,可以再把它们编译打包成APK,签名后就是手机可以安装的本地化/修正版APK了。
《android-apktool》软件软件可以访问它的主页http://code.google.com/p/android-apktool/
下载获得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。下载后解开,为了方便使用,按作者的推荐把得到的4个文件复制到C:\Windows文件夹里。
这个工具是Java写的,需要你的电脑安装了JRE或者JDK,并在系统环境变量Path里加入java.exe所在路径。
以上准备工作做好后,就可以用它来反编译APK了。这里我用动态壁纸的APK来做示范。
如果用过动态壁纸,你也许会发现在设置壁纸时,界面的显示有点问题:“动态壁纸”,在手机上中文显示为“当前壁纸”。这是“动态壁纸选择器”LiveWallpapersPicker.apk的翻译错误造成的。
(假设LiveWallpapersPicker.apk放在C盘根目录)
开始 > 运行,输入cmd,回车。
- apktool d "C:\LiveWallpapersPicker.apk" "C:\LiveWallpapersPicker"
复制代码
(命令行解释:apktool d 要反编译的文件 输出文件夹)
这样,LiveWallpapersPicker.apk就被反编译了,输出内容在C:\LiveWallpapersPicker文件夹里。
打开C:\LiveWallpapersPicker文件夹,我们发现里面有一些XML文件和一些文件夹。绝大部分情况下,语言和图片资源都在res文件夹里,我们这个例子当然不例外。
打开res文件夹,可以其中又是很多文件夹。(又是)绝大部分情况下,语言资源都放在values*文件夹里。比如说values放默认语言(英语居
多),values-de放德语,values-fr放法语等等。一般我们关心的是values-zh-rCN(简体中文)和values-zh-
rTW(繁体中文)。
打开values-zh-rCN文件夹,其中有个strings.xml。打开看看:
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<string name="application_name">动态壁纸选择器</string>
<string name="live_wallpaper_picker_title">当前壁纸</string>
<string name="live_wallpaper_preview_title">当前壁纸预览</string>
<string name="configure_wallpaper">设置...</string>
<string name="wallpaper_instructions">设置壁纸</string>
<string name="live_wallpaper_empty">无当前壁纸。</string>
<string name="set_live_wallpaper">设置壁纸</string>
<string name="wallpaper_title_and_author">%1$s提供者:%2$s</string>
<string name="live_wallpaper_loading">正在载入当前壁纸…</string>
</resources>
很好,就是它了。把“当前壁纸”都改为“动态壁纸”,再检查和修正标点——中文内容用中文标点(强烈呼吁大家注意标点问题,目前马大哈太多了)
后,保存。
本例改这么多就够了。其它复杂的APK建议把res文件夹里的内容都检查下,至少你关心的语言文件夹里的内容都检查下。
改完后,就可以重打包了。还是在cmd命令行里,输入:
- apktool b "C:\LiveWallpapersPicker"
复制代码
(命令行解释:apktool b 要打包内容所在文件夹)
就可以了。生成的APK在C:\LiveWallpapersPicker\dist文件夹里,叫out.apk。
这个out.apk是没有签名的,所以不能直接装到手机里。签名工具和方法见http://www.hiapk.com/bbs/thread-21261-1-1.html
,这里不说了。
签名后得到的APK,就是可以装到手机里的了。 |
分享到:
相关推荐
老外写的《android-apktool》软件,可以帮助我们把APK反编译,生成程序的源代码和图片、XML配置、语言资源等文件。我们对 图片和语言资源等文件修改后,可以再把它们编译打包成APK,签名后就是手机可以安装的本地化/...
不小心把项目删除了,只有apk文件,下载了好几个Apktool都用不了,只有这个能用,分享给大家。
2.下载apktool.jar及相关文件,这里下apktool-1.0.0.tar.bz2 和apktool-install-windows-2.1_r01-1.zip 3.解压apktool.jar到 C:\Windows 解压apktool-install-windows.zip到任意文件夹(例如E盘根目录) 4.Win+R ...
apk反编译工具apktool
反编译APK工具apktool apktool d apk文件 目标目录
ApkTool(apk反编译工具)
安装步骤如下: 1.首先安装需要JAVA环境,先下载JDK/JRE,已经有JAVA环境的可跳过此步 2.到code.google上下载apktool.jar以及相关文件:...使用:apktool d XXX.apk 反编译XXX.apk
2.打开APKTool,选择1进行反编译操作完成后会生成一个apk文件夹,大家可以进行改代码、换图标等操作! 3.修改完成后,选择数字3,进行回编译和签名工作,此时生成的apk就可以直接安装了! 当然你也可以选择2,只进行...
apk反编译软件 apktool.jar + aapt.exe + APKTool.cmd 解压后直接点击APKTool.cmd文件,然后按照步骤进行即可
linux平台的apk反编译工具,包含apktool+jd-gui+dex2jar,版本说明:jd-gui:0.3.5;...Linux下的android .apk文件反编译工具——apktool ! 可以将.apk 文件反编译为:程序源码(classes.dex)、资源文件
apk反编译工具 APKTool 2.3.3 2018年4月26日最新版 内包含文件apktool_2.3.3.jar和其他环境配置需求
最新apk反编译工具apktool_2.0.3.jar、apktool.bat,下载解压后将apktool_2.0.3.jar改为apktool.jar,通过cmd进入文件夹后在命令行输入apktool d test.apk,test为你要反编译的apk名称,简单方便。
APKTool是APK编译工具,能够反编译及回编译apk,同时安装反编译系统apk所需要的framework-res框架,清理上次反编译文件夹等功能。需要java支持。1.下载并安装JAVA。2.完成安装后在桌面我的电脑上点右键,按以下步骤...
该资源为apk反编译工具,可以直接打开将apk进行反编译
Android apk反编译工具,包括得到java文件的dex2jar、jg-gui和得到资源文件的apktool,http://blog.csdn.net/masofeng/article/details/6764831
apk反编译工具apktool,dex2jar,jd-gui三个工具打包下载,里面还有详细使用方法,是你反编译的不二工具
里面有文档详细介绍了使用方法 反编译apk获取到里面的资源文件 适用于刚接触Android的小白 要是反编译里面的类文件或者xml文件 可 参考http://download.csdn.net/download/u014543377/9805549
apktool工具将apk反编译成smali文件,smali.jar可将smali文件生成classes.dex文件