教程|彩虹视频/大地视频逆向改布局 去除我的和推广页面

admin

最后编辑于 2026-03-27 01:00 阅读 21

前言

彩虹视频,大地视频这类软件虽然很好用,但他的布局很臃肿,今天安鹿就教大家去除我的和推广页面,还大家一个简洁的布局!

安鹿也分享过其他实用教程,有需要的可以在微界资源网󠇖󠆍󠆕󠇘󠅷󠆚󠇕󠆞󠅹󠇙󠆩󠆯󠇘󠆭󠆙󠅧󠅧󠅧󠄞󠅑󠅞󠅜󠅥󠄡󠄣󠄡󠄤󠄞󠅓󠅟󠅝zy.weiaj.com搜一下关键词。

工具

MT管理器(看版本号选最新版本)

NP管理器(看版本号选最新版本)

彩虹视频 /大地视频(自行必应)

教程|彩虹视频/大地视频逆向改布局 去除我的和推广页面 逆向分析 第1张

教程

一、准备

1.在mt/np管理器提取安装包/找到安装包位置

2.去除软件签名效验,mt管理器中直接点击,np管理器中优先用超强方案2(去签后能正常打开不闪退才算成功,一般逆向都需要这一步)

3.随便选一个classex文件,点全选用dex++编辑器打开

二、开始

4.方法名搜索
TabBottomKitLayout找到e

5.复制以下所有代码

.method public e(Ljava/util/List;)V
    .registers 10
    .param p1  # Ljava/util/List;
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomInfo<",
            "*>;>;)V"
        }
    .end annotation

    .line 1
    invoke-interface {p1}, Ljava/util/List;->isEmpty()Z

    .line 4
    move-result v0

    .line 5
    if-eqz v0, :cond_7

    .line 7
    return-void

    .line 8
    :cond_7
    iput-object p1, p0, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->a:Ljava/util/List;

    .line 10
    invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I

    .line 13
    move-result v0

    .line 14
    add-int/lit8 v0, v0, -0x1

    .line 16
    :goto_f
    if-lez v0, :cond_17

    .line 18
    invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->removeViewAt(I)V

    .line 21
    add-int/lit8 v0, v0, -0x1

    .line 23
    goto :goto_f

    .line 24
    :cond_17
    const/4 v0, 0x0

    .line 25
    iput-object v0, p0, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->b:Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomInfo;

    .line 27
    iget-object v0, p0, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->c:Ljava/util/List;

    .line 29
    invoke-interface {v0}, Ljava/util/List;->clear()V

    .line 32
    invoke-virtual {p0}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->b()V

    .line 35
    const/high16 v0, 0x42600000  # 56.0f

    .line 37
    invoke-virtual {p0}, Landroid/view/View;->getResources()Landroid/content/res/Resources;

    .line 40
    move-result-object v1

    .line 41
    invoke-static {v0, v1}, Lg0/a;->a(FLandroid/content/res/Resources;)I

    .line 44
    move-result v0

    .line 45
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    .line 48
    move-result-object v1

    .line 49
    invoke-static {v1}, Lg0/a;->b(Landroid/content/Context;)I

    .line 52
    move-result v1

    .line 53
    invoke-interface {p1}, Ljava/util/List;->size()I

    .line 56
    move-result v2

    # 计算新的按钮数量 = 总数 - 2(去掉推广和我的)
    add-int/lit8 v2, v2, -0x2

    .line 57
    div-int/2addr v1, v2

    .line 58
    new-instance v2, Landroid/widget/FrameLayout;

    .line 60
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    .line 63
    move-result-object v3

    .line 64
    invoke-direct {v2, v3}, Landroid/widget/FrameLayout;-><init>(Landroid/content/Context;)V

    .line 67
    const-string v3, "TAG_TAB_BOTTOM"

    .line 69
    invoke-virtual {v2, v3}, Landroid/view/View;->setTag(Ljava/lang/Object;)V

    .line 72
    const/4 v3, 0x0

    .line 73
    :goto_48
    invoke-interface {p1}, Ljava/util/List;->size()I

    .line 76
    move-result v4

    .line 77
    const/16 v5, 0x50

    # 跳过第4个按钮:推广(索引3)
    const/4 v6, 3
    if-eq v3, v6, :goto_next

    # 跳过第5个按钮:我的(索引4)
    const/4 v6, 4
    if-eq v3, v6, :goto_next

    if-ge v3, v4, :cond_80

    .line 81
    invoke-interface {p1, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;

    .line 84
    move-result-object v4

    .line 85
    check-cast v4, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomInfo;

    .line 87
    new-instance v6, Landroid/widget/FrameLayout$LayoutParams;

    .line 89
    invoke-direct {v6, v1, v0}, Landroid/widget/FrameLayout$LayoutParams;-><init>(II)V

    .line 92
    iput v5, v6, Landroid/widget/FrameLayout$LayoutParams;->gravity:I

    .line 94
    mul-int v5, v3, v1

    .line 96
    iput v5, v6, Landroid/widget/FrameLayout$LayoutParams;->leftMargin:I

    .line 98
    new-instance v5, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottom;

    .line 100
    invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;

    .line 103
    move-result-object v7

    .line 104
    invoke-direct {v5, v7}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottom;-><init>(Landroid/content/Context;)V

    .line 107
    iget-object v7, p0, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->c:Ljava/util/List;

    .line 109
    invoke-interface {v7, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 112
    invoke-virtual {v5, v4}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottom;->setTabInfo(Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomInfo;)V

    .line 115
    invoke-virtual {v2, v5, v6}, Landroid/view/ViewGroup;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V

    .line 118
    new-instance v6, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout$a;

    .line 120
    invoke-direct {v6, p0, v4}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout$a;-><init>(Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomInfo;)V

    .line 123
    invoke-virtual {v5, v6}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    .line 126
    :goto_next
    add-int/lit8 v3, v3, 0x1

    .line 128
    goto :goto_48

    .line 129
    :cond_80
    new-instance p1, Landroid/widget/FrameLayout$LayoutParams;

    .line 131
    const/4 v0, -0x2

    .line 132
    const/4 v1, -0x1

    .line 133
    invoke-direct {p1, v1, v0}, Landroid/widget/FrameLayout$LayoutParams;-><init>(II)V

    .line 136
    iput v5, p1, Landroid/widget/FrameLayout$LayoutParams;->gravity:I

    .line 138
    invoke-virtual {p0}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->c()V

    .line 141
    invoke-virtual {p0, v2, p1}, Landroid/view/ViewGroup;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V

    .line 144
    invoke-virtual {p0}, Lcom/bboost/btemplate/begin/widget/bottomTab/TabBottomKitLayout;->g()V

    .line 147
    return-void
.end method

6.粘贴复制的代码到e方法名上去,把原来的代码全部删除

7.到此一切结束,一路保存返回签名安装即可

特别说明

通用于彩虹视频,大地视频这类影视软件。

0 条评论