bianqi 发表于 2024-2-6 17:23

App逆向布局修改

1、背景&目标
       为了逆向修改某App打开默认的宽度和高度;修改App默认布局;2、对App进行反编译
    反编译后的App截图如下:
   
3、查看布局文件

4、查看核心布局源代码
对smali文件进行反编译;转换成java代码;如下:

5、问题点&疑问点
我对安卓的布局不是很了解;仅仅学习了一部分布局一般情况由配置文件或者代码中直接控制布局;能否修改xml配置文件或者smail文件对App的窗口做出修改?
6、原App网盘地址如下:
链接: https://pan.baidu.com/s/1NmetDaRrIeitI3vTFOlj9A?pwd=52pj 提取码: 52pj

bianqi 发表于 2024-2-12 15:35

bianqi 发表于 2024-2-12 12:22
大佬;可以共享一下你修改后的App不;点击其他地方缩小也可以;只要可以浮动到其他的App上层就可以了;其 ...

package a.b.b.c;

import android.content.Context;
import android.content.pm.Signature;
import android.os.Build;
import android.util.Log;

/* compiled from: Condition.java */
/* loaded from: classes.dex */
public class a {

    /* renamed from: areason: collision with root package name */
    public static boolean f5a = false;

    public static void a(Context context) {
      boolean z;
      String str = Build.MANUFACTURER;
      String trim = str == null ? "" : str.trim();
      String str2 = Build.MODEL;
      String replaceAll = str2 != null ? str2.trim().replaceAll("\\s*", "") : "";
      if ("Allwinner".equals(trim) && "t3".equals(replaceAll)) {
            if (e.s(context, "com.dofun.market")) {
                Signature c = e.c(context, "com.dofun.market");
                z = "BB:04:3D:1F:6A:4D:D7:7B:82:9E:3D:E3:DB:61:BC:12".equals(a.b.f.c.a(c != null ? c.toByteArray() : null));
            } else {
                z = false;
            }
            if (z) {
                f5a = true;
            }
      }
      StringBuilder b = a.a.a.a.a.b("sPreview: ");
      b.append(f5a);
      Log.i("app", b.toString());
    }
}

f5a 为关键;

在MainActivity 类中使用了;
    public final void r0() {
      View a2;
      if (this.A) {
            if (ProxyService.b().n()) {
                s0(ProxyService.b().e0());
                if (this.b) {
                  if (a.b.b.c.a.f5a) {
                        a2 = a.b.e.c.h.b(this, this.h, new FrameLayout.LayoutParams(-1, -1, 17), null);
                  } else {
                        a2 = a.b.e.c.h.a(this, this.h, new FrameLayout.LayoutParams(-1, -1, 17), null);
                  }
                  if (a2 != null) {
                        this.F = a2;
                        B0(getSharedPreferences("dvr_app_shared", 0).getBoolean("is_full_screen", a.b.b.c.d.a().c > a.b.b.c.d.a().d));
                  }
                }
                this.h.setBackgroundResource(17170444);
                return;
            }
            s0(null);
            x0();
            this.h.setBackgroundResource(17170445);
      }
    }

bianqi 发表于 2024-2-12 12:22

zg2600 发表于 2024-2-12 08:45
是的,去掉签名校验就行

大佬;可以共享一下你修改后的App不;点击其他地方缩小也可以;只要可以浮动到其他的App上层就可以了;其他问题我也一起找找;

麻烦在此之前点击以下链接将文件发送给我,支持发送任意格式的文件,感谢~
链接:https://pan.baidu.com/disk/main#/transfer/send?surl=ACQAAAAAABHhqQ
来自:52pojie-apk

pojie_myb 发表于 2024-2-6 18:33

https://blog.csdn.net/u011283906/article/details/134915671?spm=1001.2014.3001.5501这个博文好像有点关联

逝去的初夏 发表于 2024-2-6 19:02

{:301_985: 我也想知道,学习的Xposed方式只能通过修改变量的方式来修改样式,前提是这个View在类中存在变量 限制很大

dxaw2458 发表于 2024-2-6 19:06

用开发者助手   找到你要修改的控件id 或者text   然后到xml里面找再进行修改

DaveBoy 发表于 2024-2-7 09:39

这个悬浮窗是动态添加上去的,改smali吧

zg2600 发表于 2024-2-11 19:35

我已经弄成悬浮的了,但是还有一个问题,悬浮的状态,点击屏幕任意位置就缩小了,一直找不到解决办法

bianqi 发表于 2024-2-12 01:41

zg2600 发表于 2024-2-11 19:35
我已经弄成悬浮的了,但是还有一个问题,悬浮的状态,点击屏幕任意位置就缩小了,一直找不到解决办法

可以共享一下你的修改方案不 和修改后的apk不

bianqi 发表于 2024-2-12 01:43

zg2600 发表于 2024-2-11 19:35
我已经弄成悬浮的了,但是还有一个问题,悬浮的状态,点击屏幕任意位置就缩小了,一直找不到解决办法

我今天在车机上试过 只要我重新修改了apk 安装后 就无法接受到USB的摄像头数据源了 大佬你感觉是什么原因呢 是不是他有签名校验

zg2600 发表于 2024-2-12 08:45

bianqi 发表于 2024-2-12 01:43
我今天在车机上试过 只要我重新修改了apk 安装后 就无法接受到USB的摄像头数据源了 大佬你感觉是什么原因 ...

是的,去掉签名校验就行
页: [1] 2
查看完整版本: App逆向布局修改