具体步骤:

1.下载 apktool

下载地址:https://code.google.com/p/android-apktool/downloads/list

2.通过apktool 反编译apk。命令行中输入以下命令:apktool.bat  d  -f   aaa.apk(apk路径) 反编译APK文件

3.开始修改XML布局文件

首先,我们进入反编译后的文件夹,以我的为例

进入 C:\apk\com.youmi.android.sample\res\layout  目录下

用记事本打开activity_ad.xml(注:不同的程序广告所在的文件不一样,可以查看一下别的文件里,一般都是在res\layout 目录下的xml文件里。)

可以看到下面一段代码

<LinearLayout

android:id="@+id/adLayout"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:gravity="center_horizontal"

android:orientation="horizontal"

>

这段代码是用来展示广告的我们可以改成

<LinearLayout

android:id="@+id/adLayout"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:gravity="center_horizontal"

android:orientation="horizontal"

android:visibility="gone"

>

这样广告就被隐藏起来了。

4.通过apktool 把修改后的代码编译会APK,输入apktool.bat   b  aaa (你编译出来文件夹)

5.最后记得给新的APK签名。

sign apk file: jarsigner -keystore test.keystore -storepass password -verbose TestApp-unsigned.apk name_alias

附录

Jarsigner命令详解

[-keystore <url>]           密钥库位置

[-storepass <口令>]         用于密钥库完整性的口令

[-storetype <类型>]         密钥库类型

[-keypass <口令>]           专用密钥的口令(如果不同)

[-sigfile <文件>]           .SF/.DSA 文件的名称

[-signedjar <文件>]         已签名的 JAR 文件的名称

[-digestalg <算法>]    摘要算法的名称

[-sigalg <算法>]       签名算法的名称

[-verify]                   验证已签名的 JAR 文件

[-verbose]                  签名/验证时输出详细信息

[-certs]                    输出详细信息和验证时显示证书

[-tsa <url>]                时间戳机构的位置

[-tsacert <别名>]           时间戳机构的公共密钥证书

[-altsigner <类>]           替代的签名机制的类名

[-altsignerpath <路径列表>] 替代的签名机制的位置

[-internalsf]               在签名块内包含 .SF 文件

[-sectionsonly]             不计算整个清单的散列

[-protected]                密钥库已保护验证路径

[-providerName <名称>]      提供者名称

[-providerClass <类>        加密服务提供者的名称

[-providerArg <参数>]] ... 主类文件和构造函数参数

最新文章

  1. Redhat6.4下安装Oracle10g
  2. Lambda表达式详解
  3. MSSQ调优所需用的语句
  4. JSON: Property &#39;xxx&#39; has no getter method的解决办法
  5. .net获取周几(中文)
  6. Android 第三方开源下拉框:NiceSpinner
  7. HTML5本地数据库(WebSQL)[转]
  8. 查看mysql库大小,表大小,索引大小
  9. 坑人的 try catch finally
  10. Adobe Dreamweaver CS6 序列号 注册码(转自91zcm)
  11. char与byte的差别
  12. FreeCodecamp:Repeat a string repeat a string
  13. 转载:细说Cookie
  14. MongoDB在已有账号的实例下还原数据库报错的分析(error applying oplog)
  15. jQuery操作复选框checkbox技巧总结 ---- 设置选中、取消选中、获取被选中的值、判断是否选中等
  16. spring boot的热加载(hotswap)
  17. 数据库 之 E-R设计感想
  18. Faster rcnn代码理解(4)
  19. java多线程快速入门(十三)
  20. mysql设置对外访问

热门文章

  1. hdu1878 欧拉回路
  2. Ubuntu 14.10 下awk命令详解
  3. linux上安装apache
  4. 爬虫再探实战(四)———爬取动态加载页面——请求json
  5. Jumping Cows_贪心
  6. Qt线程(1) moveToThread
  7. 《JavaScript Ninja》之闭包
  8. Core Java Volume I — 3.1. A Simple Java Program
  9. (理论篇)温故而知新_PHP入门基础教程
  10. 获得项目的绝对地址 getRequestURI,getRequestURL的区别