安卓逆向系列教程 4.8 去廣告 II

4.8 去廣告 II

作者:飛龍

軟件下載:http://www.xuepojie.com/thread-24545-1-1.html

事先聲明,這個(gè)軟件沒(méi)有功能,是個(gè)殼子,我們主要研究如何去廣告。

軟件的主界面是這樣的,可以看到最下方的“有米”:

中間是一些按鈕,點(diǎn)擊每個(gè)按鈕都會(huì)出現(xiàn)廣告:

拖入 AK,發(fā)現(xiàn)是 e4a 編寫(xiě)的。

我們搜索“有米廣告”:

按照 e4a,“主窗口”應(yīng)該就是主界面,StartActicity只是個(gè)包裝。e4a 的界面都是動(dòng)態(tài)創(chuàng)建的,在$define方法中。

我們觀察主窗口$創(chuàng)建完畢方法:

.method public 主窗口$創(chuàng)建完畢()V
    .locals 6

    .prologue
    const/4 v3, 0x1

    .line 12
    iget-object v0, p0, Lcom/azqqd/主窗口;->有米廣告1:Lcom/e4a/runtime/components/impl/android/n43/有米廣告;

    const-string v1, "80b3665dbe24da6c"

    const-string v2, "b1ec288d42c62f47"

    move v4, v3

    move v5, v3

    invoke-interface/range {v0 .. v5}, Lcom/e4a/runtime/components/impl/android/n43/有米廣告;->初始化廣告(Ljava/lang/String;Ljava/lang/String;ZZZ)V

    .line 13
    iget-object v0, p0, Lcom/azqqd/主窗口;->有米廣告1:Lcom/e4a/runtime/components/impl/android/n43/有米廣告;

    invoke-interface {v0}, Lcom/e4a/runtime/components/impl/android/n43/有米廣告;->顯示插播廣告()V

    .line 14
    iget-object v0, p0, Lcom/azqqd/主窗口;->有米廣告1:Lcom/e4a/runtime/components/impl/android/n43/有米廣告;

    const-string v1, "\u4f17\u8d5e-\u4fee\u6b63\u7248"

    invoke-interface {v0, v1}, Lcom/e4a/runtime/components/impl/android/n43/有米廣告;->設(shè)置積分墻標(biāo)題(Ljava/lang/String;)V

    .line 15
    iget-object v0, p0, Lcom/azqqd/主窗口;->有米廣告1:Lcom/e4a/runtime/components/impl/android/n43/有米廣告;

    invoke-interface {v0}, Lcom/e4a/runtime/components/impl/android/n43/有米廣告;->顯示插播廣告()V

    return-void
.end method

直接在這個(gè)方法的開(kāi)頭插入return-void,就沒(méi)了。

之后是按鈕的廣告,由于按鈕太多,一共有八個(gè),我這里僅僅演示左上角的按鈕(139 那個(gè))。

在當(dāng)前文件中搜索139

iget-object v0, p0, Lcom/azqqd/主窗口;->按鈕1:Lcom/e4a/runtime/components/impl/android/n1/按鈕;

const-string v1, "139\u79ef\u5206500\u8d5e"

invoke-interface {v0, v1}, Lcom/e4a/runtime/components/impl/android/n1/按鈕;->標(biāo)題(Ljava/lang/String;)V

得知它就是按鈕 1。

然后找到按鈕1$被單擊方法:

.method public 按鈕1$被單擊()V
    .locals 1

    .prologue
    .line 26
    const-string v0, "\u8bf7\u5148\u5b8c\u6210\u5206\u4eabQQ\u7fa4\u4efb\u52a1"

    invoke-static {v0}, Lcom/e4a/runtime/應(yīng)用操作;->彈出提示(Ljava/lang/String;)V

    .line 27
    iget-object v0, p0, Lcom/azqqd/主窗口;->有米廣告1:Lcom/e4a/runtime/components/impl/android/n43/有米廣告;

    invoke-interface {v0}, Lcom/e4a/runtime/components/impl/android/n43/有米廣告;->顯示插播廣告()V

    return-void
.end method

可以看到它沒(méi)有任何實(shí)際功能,直接在開(kāi)頭插入return-void。我們之后只需要堆其余 7 個(gè)按鈕執(zhí)行相同操作就好了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,969評(píng)論 19 139
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,422評(píng)論 25 708
  • ¥開(kāi)啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開(kāi)一個(gè)線程,因...
    小菜c閱讀 6,536評(píng)論 0 17
  • 蘇希冉閱讀 194評(píng)論 0 0
  • 贈(zèng)送彼岸花!同事在群里發(fā)消息說(shuō),贈(zèng)送5份,先報(bào)名先得。 彼岸花是什么花?不造,但我喜歡這花名,引人遐想。 同事在群...
    梅曉云閱讀 660評(píng)論 0 0