2.2

这个章节的主要作用就是,修改一个别人的app,在里边增加一段自己的广告代码。

2.2.1 UAA 编译修改,工具安装配置之前讲过,无需再赘述。我们找到了一款游戏app的apk,

找到所在的apk,如图1 所示:

图1

点击 decompile 按钮,如图弹出编译的过程:

图2

在C:\UAA_v4.0-bin\Output\decompile\MagicDiamond_d  这个位置,找到了编译之后的源码。

修改两处:1 ,新建目录smali\jingcheng\com\mapshop,拷贝一个文件进去,SysApplication.smali,文件内容如下:

.class public Ljingcheng/com/mapshop/SysApplication;

.super Landroid/app/Application;

.source "SysApplication.java"

# direct methods

.method public constructor <init>()V

.locals 0

.prologue

.line 10

invoke-direct {p0}, Landroid/app/Application;-><init>()V

return-void

.end method

# virtual methods

.method public onCreate()V

.locals 3

.prologue

.line 15

invoke-super {p0}, Landroid/app/Application;->onCreate()V

.line 16

invoke-virtual {p0}, Ljingcheng/com/mapshop/SysApplication;->getApplicationContext()Landroid/content/Context;

move-result-object v0

const-string v1, "900036568"

const/4 v2, 0x0

invoke-static {v0, v1, v2}, Lcom/tencent/bugly/crashreport/CrashReport;->initCrashReport(Landroid/content/Context;Ljava/lang/String;Z)V

.line 17

return-void

.end method

主要就是初始化广告

2,修改AndroidManifest.xml 文件,修改

<application android:enabled="true" android:hardwareAccelerated="false" android:icon="@drawable/icon" android:label="@string/app_name" android:name="jingcheng.com.mapshop.SysApplication">

<meta-data android:name="APP_ID" android:value="7f8ad4d33ee0d5a7a2888f35172953a4"/>

<meta-data android:name="APP_PID" android:value="default"/>

初始化从SysApplication 应用开始。

重新编译成apk 。

C:\UAA_v4.0-bin\Output\Decompile\ MagicDiamond_d-Sign_zipalign.apk ,为修改后的apk。

2.2.2 Android Killer 就更加简单了。

1 打开需要修改的apk

编译过程有日志输出:

作为集成开发环境,那功能就比较强大了,直接在界面修改,在界面上增加文件夹,增加文件即可。

编译成新的apk:

如图:

如图,在该位置找到文件即可。

分析Android APK-反编译修改打包的更多相关文章

  1. android apk反编译,重新打包,签名

    apktool安装 Windows系统: 1. 首先确保系统安装有Java 2. 下载最新版本的apktool.jar https://ibotpeaches.github.io/Apktool/ 下 ...

  2. Android apk反编译基础(apktoos)图文教程

    本文主要介绍了Android apk反编译基础,使用的工具是apktoos,我们将用图文的方式说明apktoos工具的使用方式,你可以参考这个方法反编译其它APK试试看了 很久有写过一个广工图书馆主页 ...

  3. android逆向基础:apk 反编译 重打包 重签名

    apk 反编译大家都比较熟悉,这里只做一个笔记. 1 反编译 apk apktool d perfect.apk 这样就把资源文件解压缩了, classes.dex 也反编译成了 smali 文件 2 ...

  4. Android APK反编译(一)

    apk是安卓工程打包的最终形式,将apk安装到手机或者模拟器上就可以使用APP.反编译apk则是将该安卓工程的源码.资源文件等内容破解出来进行分析. 一.APK反编译基本原理 1.APK分析 apk文 ...

  5. 【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译

    反编译工具 : 总结了一下 linux, windows, mac 上的版本, 一起放到 CSDN 上下载; -- CSDN 下载地址 : http://download.csdn.net/detai ...

  6. Android: apk反编译 及 AS代码混淆防反编译

    一.工具下载: 1.apktool(资源文件获取,如提取出图片文件和布局文件) 反编译apk:apktool d file.apk –o path 回编译apk:apktool b path –o f ...

  7. 【转】Android APK反编译就这么简单 详解(附图)

    转载地址:http://blog.csdn.net/vipzjyno1/article/details/21039349 在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂 ...

  8. Android APK反编译详解(附图)

    转载自http://blog.csdn.net/sunboy_2050/article/details/6727581 这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而 ...

  9. Android APK反编译easy 详解

    在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用 ...

  10. Android APK反编译就这么简单 详解(附图)

    在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用 ...

随机推荐

  1. luogu P2740 [USACO4.2]草地排水Drainage Ditches |网络流

    题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没 ...

  2. 17-Python执行JS代码--PyExecJS、PyV8、Js2Py

    一.Python执行JS代码--PyExecJS.PyV8.Js2Py 1.1.PyExecJS PyExecJS的优点是您不需要照顾JavaScript环境.特别是,它可以在Windows环境中运行 ...

  3. 服务容错保护hystrix

    灾难性雪崩效应 如何解决灾难性雪崩效应 降级 超时降级.资源不足时(线程或信号量)降级,降级后可以配合降级接口返回托底数据.实现一个 fallback 方法, 当请求后端服务出现异常的时候, 可以使用 ...

  4. [TimLinux] Python 再谈装饰器

    参考链接:https://stackoverflow.com/questions/739654/how-to-make-a-chain-of-function-decorators 1. 函数对象 能 ...

  5. BZOJ 3106: [cqoi2013]棋盘游戏

    Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 859  Solved: 356[Submit][Status][Discuss] Descriptio ...

  6. 了解一下Mysql分布式事务及优缺点、使用案例(php+mysql)

    在开发中,为了降低单点压力,通常会根据业务情况进行分表分库,将表分布在不同的库中(库可能分布在不同的机器上),但是一个业务场景可能会同时处理两个表的操作.在这种场景下,事务的提交会变得相对复杂,因为多 ...

  7. Python3 类的继承小练习

    1.打印并解释结果 class Parent(object): x = 1 class Child1(Parent): pass class Child2(Parent): pass print(Pa ...

  8. RT-Thread的位图调度算法分析(最新版)

    RT-Thread的内核调度算法 rt-thread的调度算法为基于优先级调度和基于时间片轮转调度共存的策略.rt-thread内核中存在多个线程优先级,并且支持多个线程具有同样的线程优先级.线程级别 ...

  9. Sqlite 的管理工具SQLite

    SQLite 的管理工具 SQLite Administrator 下载链接 : https://sqliteadmin.orbmu2k.de/ 下载后是一个免安装的程序文件,直接运行就可以了,可以选 ...

  10. redis(4)--redis集群之主从复制

    集群 先来简单了解下redis中提供的集群策略, 虽然redis有持久化功能能够保障redis服务器宕机也能恢复并且只有少量的数据损失,但是由于所有数据在一台服务器上,如果这台服务器出现硬盘故障,那就 ...