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,然后签名就可以。

最新文章

  1. cocos2d-x内存管理(见解)
  2. 机器学习笔记:Gradient Descent
  3. map each 工具函数
  4. Android 6 Marshmallow USB调试授权
  5. POJ3041Asteroids(二分图最少顶点覆盖)
  6. (转)使用pth文件,让python方便的import自己写的模块
  7. [git] git 的基础功能
  8. 修改文件所有者 chown
  9. 5 c语言数组
  10. 关于AutoCAD.NET的辅助方法
  11. ThinkPHP 的CURD
  12. Action和Fuc的区别
  13. 沉淀,再出发——安装windows10和ubuntu kylin15.04双系统心得体会
  14. python爬取365好书中小说
  15. 查看linux是ubuntu还是centos
  16. 关于相机拍照获取图片onActivityResult返回data 为null的问题
  17. 模拟实现ATM+购物商城程序
  18. java注解学习(1)注解的作用和三个常用java内置注解
  19. Junit测试时,如何截获到Console的输出
  20. Jmeter之逻辑控制器(Logic Controller)【转】

热门文章

  1. Canvas之打字机游戏
  2. 用H5+Boostrap做简单的音乐播放器
  3. [CF#290 Div.1 C]Fox And Dinner(最大流)
  4. 检测IE浏览器方法
  5. dmesg 显示内核消息
  6. tttttabs
  7. Kernel Methods (2) Kernel function
  8. 如何知道某个网站的IP地址
  9. BZOJ 1105: [POI2007]石头花园SKA
  10. BZOJ 4551: [Tjoi2016&amp;Heoi2016]树