吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1018|回复: 5
收起左侧

[Android 求助] 求助各位大佬Xposed 怎么HOOK安卓系统函数??

  [复制链接]
wolong810825 发表于 2023-9-8 10:18
XposedHelpers.findAndHookMethod("android.location.LocationManager", classLoader,        "getGpsStatus", GpsStatus.class, new XC_MethodHook()
        {
            @Override
            protected void afterHookedMethod(MethodHookParam param) throws Throwable
            {
                GpsStatus gss = (GpsStatus) param.getResult();
                if (gss == null)
                    return;


这段代码是想找到手机的当前位置,并修改当前的手机位置的方法,这个方法直接报异常 ,我在LSposd 是选择的 系统框架这个模块来HOOK的,请问HOOK手机本身的类该怎么操作?
是我代码的问题?还是我HOOK的模块的问题?请大佬给我指点一下。。谢谢了。

1694139423828.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

正己 发表于 2023-9-8 12:37
本帖最后由 正己 于 2023-9-8 12:40 编辑

1.首先hook系统函数需要重启
2.其次这个方法大概率是重载函数,所以建议用下面这个免填参数的来hook
[Java] 纯文本查看 复制代码
Class Gps = loadPackageParam.classLoader.loadClass("android.location.LocationManager");
XposedBridge.hookAllMethods(Gps, "getGpsStatus", new XC_MethodHook() {

    protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
        super.beforeHookedMethod(param);
        
        }});

3.还有一种可能是就是classload要传对,不然也会找不到方法
 楼主| wolong810825 发表于 2023-9-8 13:15
wystudio 发表于 2023-9-8 14:31
选择的应用应该是你要hook的对应应用,而不是“系统框架”
比如你想让哪个应用的GPS定位变成你修改的那个,就应该把这个应用添加进去
怜渠客 发表于 2023-9-8 16:18
1.看看类名函数名参数填对没有
2.hook系统函数无需重启,hook系统框架才用重启
3.你的目标应用是你想修改的app,而非系统框架
4.classloader不对
5.建议用LocationManager.class,不用findclass
 楼主| wolong810825 发表于 2023-9-8 18:14
主要目标是手机本身,不是某一个指定的应用,比如我想修改手机本身的当前定位地址,这样所有的APP的地址就都变了。LSposed还必须要选一个应用,所以我就只能选了系统框架。有目标app当然简单了,直接HOOK目标应用关键点就可以了。我其实是想HOOK手机的系统函数。就老报错找不到对应的方法,就很郁闷。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 14:34

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表