分析Android APK-反编译修改打包

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:

 

如图:

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

 

 

猜你喜欢

转载自www.cnblogs.com/csharponworking/p/11696385.html