`
xiaoboss
  • 浏览: 651537 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

一个APK反编译利器Apktool(android汉化)

阅读更多

APK 本地化

说起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文件夹里。(aapt.exe,apktool.bat,mgwz.dll,apktool.jar)

这个工具是Java写的,需要你的电脑安装了JRE或者JDK,并在系统环境变量Path里加入java.exe所在路径。

以上准备工作做好后,就可以用它来反编译APK了。这里我用动态壁纸的APK来做示范。

如果用过动态壁纸,你也许会发现在设置壁纸时,界面的显示有点问题:“动态壁纸”,在手机上中文显示为“当前壁纸”。这是“动态壁纸选择 器”LiveWallpapersPicker.apk的翻译错误造成的。

(假设LiveWallpapersPicker.apk放在C盘根目录)

开始 > 运行,输入cmd,回车。
  1. 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命令行里,输入:
  1. 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,就是可以装到手机里的了。


操练:去掉免费版软件的广告条


打开google code发现Apktool更新了,居然支持win了。。。。
那本文就是一篇介绍在windows环境下使用Apktool的笔记。
安装

1.先装JAVA环境,JDK/JRE都行,官网下载 装过的就跳过吧

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 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入apktool看看。会列出一些帮助的话就成功了。 Apktool 命令

apktool d XXX.apk ABC 反编译 XXX.apk到文件夹ABC
apktool b ABC 从文件夹ABC重建APK,输出到ABC\dist\out.apk
然后我们反编译一枚软件玩玩…
AutoMemoryManager的免费版底部有一条广告,去掉它吧。
把com.lim.android.automemman.apk放到同文件夹(我的就是E盘根目录)
Win+R 运行CMD
E:<回车>
E:\>apktool d com.lim.android.automemman.apk AMM <回车>
I: Baksmaling…
I: Decoding resource table…
I: Decoding resources…
I: Copying assets and libs…
现在文件被decode到E:\AMM了,打开E:\AMM\res\layout\main.xml看,所有都可见了吧~
编辑第59行

<com.admob.android.ads.AdView android:id=”@id/ad” android:layout_width=”fill_parent” android:layout_height=”wrap_content” admobsdk:backgroundColor=”#ff000000″ admobsdk:textColor=”#ffffffff” admobsdk:keywords=”Android application” />

改为

<com.admob.android.ads.AdView android:id=”@id/ad” android:layout_width=”0.0dip” android:layout_height=”0.0dip” admobsdk:backgroundColor=”#ff000000″ admobsdk:textColor=”#ffffffff” admobsdk:keywords=”Android application” />

然后CMD输入
E:\>apktool b AMM
I: Checking whether sources has changed…
I: Smaling…
I: Checking whether resources has changed…
I: Building resources…
I: Building apk file…
用Auto-sign签名E:\AMM\dist\out.apk 安装
这样广告就不见了

再看,嘿嘿~很帅吧…
这其实就是改了AndroidManifest.xml里的ADmob广告ID罢了
分享到:
评论

相关推荐

    安卓apk反编译利器Apktool

    这时,就需要用到工具如Apktool,它是一个强大的Android APK反编译工具。Apktool能够帮助开发者或研究人员解包、反编译、修改以及重新打包APK文件,以便深入理解应用的工作原理。 Apktool由IzzySoft开发,其主要...

    一个APK反编译利器Apktool

    老外写的《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

    反编译APK工具apktool

    反编译APK工具apktool apktool d apk文件 目标目录

    ApkTool(apk反编译工具)

    ApkTool(apk反编译工具)

    android APK反编译工具Apktool

    安装步骤如下: 1.首先安装需要JAVA环境,先下载JDK/JRE,已经有JAVA环境的可跳过此步 2.到code.google上下载apktool.jar以及相关文件:...使用:apktool d XXX.apk 反编译XXX.apk

    反编译apk|apk反编译工具apktool v1.5.2 绿色汉化版.zip

    2.打开APKTool,选择1进行反编译操作完成后会生成一个apk文件夹,大家可以进行改代码、换图标等操作! 3.修改完成后,选择数字3,进行回编译和签名工作,此时生成的apk就可以直接安装了! 当然你也可以选择2,只进行...

    android反编译工具 apktool-2.9.3.jar

    Android反编译工具Apktool是一款强大的开源工具,主要用于安卓应用程序(APK)的解包、反编译、修改和重新打包。版本2.9.3是该工具的一个更新版本,提供了一些修复和改进,以增强用户体验和处理各种APK文件的能力。...

    apk反编译工具 apktool

    【标题】"apk反编译工具 apktool"是Android应用开发和逆向工程中的一个重要工具。Apktool是由IzzySoft开发的一款免费、开源的软件,它允许用户对APK文件进行反编译,以便查看、修改和重新打包Android应用。 【核心...

    apk反编译之apktool

    【apk反编译之apktool】是一个针对Android应用程序(APK)的专业工具,它允许开发者或研究人员对APK文件进行反编译、分析和修改,然后再重新打包。Apktool是一个开源项目,由IzzySoft开发,它主要用于帮助开发者理解...

    安卓APK反编译神器APKTOOL最新版

    使用这些文件,开发者可以在本地环境中搭建一个完整的APK反编译和打包工作流。首先,通过`apktool.bat`对APK进行反编译,然后在Smali代码或资源文件中进行修改,接着使用Baksmali和Smali进行编译,最后通过`signapk....

    apktool反编译工具

    2. **反编译APK**: 运行命令 `apktool d your_apk_file.apk`,这将在当前目录下创建一个与APK文件同名的目录,包含所有解包的文件。 3. **修改源代码或资源**: 在解包的目录中,你可以编辑Java源代码、XML布局文件或...

    apk反编译软件 apktool.jar + aapt.exe + APKTool.cmd

    APK反编译是Android应用开发领域中的一个重要概念,它涉及到对已安装的APK文件进行逆向工程,以查看其源代码、资源文件、甚至修改应用程序的行为。在这个主题中,我们将深入探讨如何使用apktool.jar、aapt.exe以及...

    最新apk反编译工具apktool_2.0.3.jar、apktool.bat

    最新apk反编译工具apktool_2.0.3.jar、apktool.bat,下载解压后将apktool_2.0.3.jar改为apktool.jar,通过cmd进入文件夹后在命令行输入apktool d test.apk,test为你要反编译的apk名称,简单方便。

    Android反编译工具apktool

    Apktool是一个开源的Java工具,允许开发者解压、反编译和重新打包Android的APK文件,它极大地简化了对APK资源的分析和修改过程。 **1. Apktool介绍** Apktool由IzzySoft开发,其主要功能包括: - **反编译**: 解析...

    安卓APK自动反编译汉化签名ApkTool

    1. 使用ApkTool反编译APK:下载并运行ApkTool.exe,输入APK文件路径,ApkTool会将APK的资源文件、布局、图片、字符串等解析出来。 2. 汉化应用:在解压后的目录中,找到需要汉化的字符串文件(通常是res/values/...

    apk反编译工具 APKTool 2.3.3 2018年4月26日最新版

    APKTool是一款强大的Android应用(APK)反编译工具,由IzzySoft开发,主要用于帮助开发者解包、修改和重新打包APK文件。2.3.3是该工具在2018年4月26日发布的一个较新版本,提供了更稳定和高效的反编译功能。 一、...

Global site tag (gtag.js) - Google Analytics