吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8124|回复: 12
收起左侧

[Android 原创] xposedHook-给web页面添加自己的js

[复制链接]
Shutd0wn 发表于 2018-7-19 20:44
项目地址:https://github.com/sepyeight/HookWebViewRunCostomeJs
主要需求:一次面试公司需要抓取手机app内部web页面的数据,当时说python人家表示不行,需要xposed到手机,今天有时间,实现了demo,给需要的人
主要点:
被hook的app代码,简单写了几行

被hook的app代码,简单写了几行

被hook的app代码,简单写了几行

1.如果执行自己的js
[Java] 纯文本查看 复制代码
    private class MyWebViewClient extends WebViewClient{
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            XposedBridge.log(url);
            return true;
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            // Execute your javascript below
            String jsLine = initJS();
            XposedBridge.log("jsLine->>"+jsLine);
            view.loadUrl("javascript:"+jsLine);
        }
    }


继承webViewClient重写onPageFinished加入你的js,然后添加WebViewClient进去
[Java] 纯文本查看 复制代码
@Override
            protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                super.beforeHookedMethod(param);
                XposedHelpers.findAndHookMethod("android.webkit.WebView", lpparam.classLoader, "setWebViewClient", WebViewClient.class, new XC_MethodHook() {
                    @Override
                    protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
                        super.afterHookedMethod(param);
                        param.args[0] = new MyWebViewClient();
                    }
                });
            }


2.回调方法到java层
[JavaScript] 纯文本查看 复制代码
window.android.startFunction(book_json);

基本就这样了,测试无法直接修改html添加jquery代码等,大佬会的可以告诉我。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
破解project + 1 + 1 我很赞同!

查看全部评分

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

少不更事 发表于 2018-7-20 15:45
iwang110 发表于 2018-7-20 10:26
能否hookjs里面的参数

可以看看Proxy
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Proxy
再结合楼主的方法试试
 楼主| Shutd0wn 发表于 2018-7-19 20:51
Anakin 发表于 2018-7-19 23:09
谢谢楼主分享  研究下Js   楼主不能这样啊  你怎么又是楼主  又是沙发   也不留些给兄弟
qcwap2012 发表于 2018-7-19 23:09
可以可以,感谢分享。
iwang110 发表于 2018-7-20 10:26
能否hookjs里面的参数
Evil0r 发表于 2018-7-20 11:47
谢谢分享 ~~~
fcguo800 发表于 2018-7-20 13:44
好厉害,新手好好学习一下,感谢分享。
ruby 发表于 2018-7-20 18:46
可以替换里面的参数
cyhcuichao 发表于 2018-7-20 21:58
小白一枚前来学习
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-24 23:11

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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