当前位置: 首页 > 面试题库 >

Android:拦截来自WebView的AJAX调用

韦泳
2023-03-14
问题内容

我想要一个HTML/javascript在中运行的应用程序WebView来进行AJAXJava代码处理的调用。
理想的方法是仅拦截呼叫(简单,只需使用shouldOverrideUrlLoading())并“返回”一些数据。
但是,WebView除了javascript使用调用函数外,我没有找到“返回”对的响应的方法loadUrl()
这对我来说不起作用,因为该HTML/javascript应用程序是我无法控制的嵌入式应用程序。就HTML /
javascript应用程序而言,它只是进行AJAX调用并接收一些数据。

有什么想法吗?


问题答案:

最后,我还是使用了问题中描述的方法。

我截获了一些特定的请求,例如:foo://bar/get/1?callback=foobar然后解析URL并使用实际数据调用javascript回调函数。
回调函数是在的查询部分中定义的URL,因此在上面的示例中将是:foobar();

调用该函数很简单,只需使用: yourWebView.loadUrl("javascript:foobar('somedata')");



 类似资料:
  • 问题内容: 我试图拦截所有AJAX调用,以检查AJAX响应是否包含我从PHP脚本作为JSON发送的特定错误代码(代码:ACCESS_DENIED,SYSTEM_ERROR,NOT_FOUND)。 我知道一个人可以做这样的事情: 但是-仅在“ ajaxSuccess”事件起泡到.log div时才起作用吗?我对么?通过将“ ajaxSuccess”事件绑定到文档可以实现我想要的东西吗? 我可以在jQ

  • 我能以某种方式截获来自应用程序的绝对所有流量吗?我应该做什么来做到这一点?提前谢谢你)

  • 在Android WebView中有没有拦截重定向请求的方法?似乎不应该调用InterceptRequest(WebView,WebResourceRequest)! 我希望通过以下方式自动捕获所有web视图请求中的令牌过期: 从服务器发出重定向而不是401 使用shouldOverrideUrlLoading()在需要登录的情况下调用AppAuth 使用shouldInterceptReques

  • 我想为我的Android手机写一个软件,拦截来电,并播放一个简短的音频剪辑,指示来电者按“1”继续通话。这是打电话推销员的。 备注: > 很难得到一个明确的答案,因为在2012年,Android2.3(姜饼)删除了一些与修改手机状态相关的重要API,见这里。然而,Android7(“牛轧糖”)似乎支持呼叫阻塞(见这里),所以我希望当前的API支持拦截呼叫。 我不想像这里建议的那样将呼叫转发到某个服

  • null 任何帮助都是欢迎的,谢谢。

  • 本文向大家介绍Android来电拦截的实现方法,包括了Android来电拦截的实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android来电拦截的方法,供大家参考,具体内容如下 权限 拨号广播—PhoneStateReceiver 来电挂断 BlockCallHelper 看主界面MainActivity 最后看AIdl层面 ITelephony.aidl Neighbo