http://my.oschina.net/mopidick/blog/135581

以ubuntu的环境为例子,window的大同小异

首先下载apktool工具:https://code.google.com/p/android-apktool/

注意:这个地址下载时,由于官网把apktool和apktool-install-linux-r05-ibot(或者是window下的)两个工具分开了,所以用户需要同时下载:

<!-- lang: shell -->
1、apktool1.5.2.tar.bz2
2、apktool-install-linux-r05-ibot.tar.bz2 (window下:apktool-install-windows-r05-ibot.tar.bz2)

下载完后,分别解压上面两个文件夹,然后将apktool.jar拷贝到另一个文件夹下(包含了aapt 、apktool)。

上述工作做好后,就可以我们的反编译和打包apk了(以myapk.apk为例)

1、将 myapk.apk 文件拷到上面那个目录(包含了aapt 、apktool,apktool.jar)。

2、使用以下命令反编译

<!-- lang: shell -->
./apktool d myapk.apk newapk

(其中d:代表decode的意思,就是解码;newapk是随便起的名字,是你要解压到的那个目录)

解压后,你会发现出现了一个新目录:newapk(子目录含:assets、lib、res、smail以及别的两个文件) 其中smail文件夹下是源码的另一种形式,你要修改的一些东西也都在samil文件夹下。

A、汉化:那么使用ctrl+F查找“const-string”字符,找到后面需要修改的字符串。如,将“setting”改为“设置”

B、去除广告:同样使用ctrl+F查找字符串“http://”;这个链接就是广告链接,你只要把引号里的链接删除即可

个人经验: 去除广告最好的方法其实就是找到manifest.xml文件中的与广告相关的activity和service,直接删除就行了!!!

3、修改完后,我们将其打包回apk,使用如下命令:

<!-- lang: shell -->
./apktool b newapp myapk2.apk

其中 b 代表:build的意思;myapk2.apk是你最终打包想要生成的那个apk的名字

4、签名

使用工具:AndroidResEdit 这个工具使用很简单,下载完后只需选择myapk2.apk,然后签名就可以。

ApkTool反编译apk,去除广告或者汉化后重新打包apk,并签名的更多相关文章

  1. 【转】利用apktool反编译apk,并且重新签名打包

    网站:https://ibotpeaches.github.io/Apktool,下载安装好apktool. 我的安装在 C:\Users\Administrator\Downloads\apktoo ...

  2. apktool反编译工具

    几个报错的解决办法 apktool反编译时经常会出现下面的信息 Input file was not found or was not readable. Destination directory ...

  3. ApkTool反编译和重新打包

    有时会需要反编译APK,各人有各人的原因,你都懂的…… 准备工作: 下载APKTool,通过下面这个连接进行下载,https://code.google.com/p/android-apktool/d ...

  4. Eclipse被汉化后恢复EN模式

    问题描述: 在安装Flush builder 的时候安装了汉化包,导致Eclipse中功能显示为汉字. 问题解决: 在Eclipse快捷方式下“目标”路径中添加-nl "EN"即可 ...

  5. Eclipse汉化后怎么改回英文版(可切换中英文)

    Eclipse汉化后怎么改回英文版(可切换中英文) 很多朋友将MyEclipse汉化后还想改回英文的,其实只要修改MyEclipse的配置文件就可以了,这里我以MyEclipse7.0为例演示一下如何 ...

  6. VSS汉化后出现问题及解决方法

    1.vss汉化后在获取项目时不递归获取? 解决方法:工具-->选项-->常规-->勾选 项目递归时有效(R) 2.查看差异,可视化窗口未出现分隔? 解决方法:差异选项-->格式 ...

  7. Eclipse汉化后怎么改回英文版 (中文 改 英文)

    Eclipse汉化后怎么改回英文版(可切换中英文) 很多朋友将MyEclipse汉化后还想改回英文的,其实只要修改MyEclipse的配置文件就可以了,这里我以MyEclipse7.0为例演示一下如何 ...

  8. Xml文件汉化后改变代码页

    源Xml文件代码页为ansi,汉化后要转换为UTF-8,在网上搜素了以下结果,但解释的不都清楚,我找了好一阵才找到相应的操作.   为防止自己以后忘了,补充如下: 经过这样的设置,生成的汉化xml文件 ...

  9. 安卓工作室 android studio 汉化后,报错。 设置界面打不开。Can't find resource for bundle java.util.PropertyResourceBundle, key emmet.bem.class.name.element.separator.label

    安卓工作室 android studio 汉化后,报错. 设置界面打不开. Android studio has been sinified and reported wrong.The setup ...

随机推荐

  1. 让mysql支持emoji表情

    一.问题及原因 APP产品想对Emoji进行支持,但发现mysql数据库无法写入表情.原因是我们的mysql数据库默认用的是utf8编码,utf8编码存储时用的是三个字节,但Emoji表情是4个字节, ...

  2. linux上课

    1. service --status-all 2. service sshd restart 3. service --status-all  | grep ssh 4. chkconfig --l ...

  3. Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

    简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...

  4. IE对象最后一个属性后不要加逗号,否则在IE7及以下版本中会报错

    某函数返回一个对象,如果在最后一个属性后加逗号,IE7及以下版本中会报错 正确代码: return{ top:rect.top-top, bottom:rect.bottom-top, left:re ...

  5. 11-cp 命令总结

  6. window 安装redis服务、卸载redis服务和启动redis服务

    1.安装redis服务 redis-install.bat 1 echo install redis-server23 D:\redis\redis-server.exe --service-inst ...

  7. js浏览器窗口

    一.clientwidth和clientheight 注:返回了元素大小,但没有单位,默认单位是 px,如果你强行设置了单位,比如 100em之类,它还是会返回 px的大小. (CSS获取的话,是照着 ...

  8. EditText 几种显示方式,固定行数,自适应行数

    1.显示7行,超过7行自动向下补充行数 <EditText android:id="@+id/edt_content" android:layout_width=" ...

  9. Maven-pom.xml详解

    (看的比较累,可以直接看最后面有针对整个pom.xml的注解) pom的作用 pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者需要遵 ...

  10. 控件(进度类): RangeBase, Slider, ProgressBar, ProgressRing

    1.RangeBase(基类) 的示例Controls/ProgressControl/RangeBaseDemo.xaml <Page x:Class="Windows10.Cont ...