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:
如图:
如图,在该位置找到文件即可。