首页 > 解决方案 > 如何在android native中每2秒检查一次webview的http url连接

问题描述

我有一个在 android 本机应用程序上运行的 webview。我需要一个轮询服务来确保 webview 的 http url 状态代码为 200,否则会引发错误。一旦连接恢复并显示状态代码 200 错误就会消失。基本上互联网连接可用,但服务器通信错误

我依靠 onReceivedError() 方法,该方法在 http 错误时被调用,异步任务是通过传递 url 来检查状态是否为 200 来执行的。但是 onReceivedError() 在 30 秒后被调用 - 1 分钟后即使连接丢失也是如此。

预期:一旦连接丢失并且 http url 不可访问错误应立即显示

标签: androidwebviewerror-handlingmonitor

解决方案


请按照以下步骤-

  1. 创建(不调用)一个android后台服务并使用递归方法放置一个计时器。在该方法中,创建与您的 url 的 http url 连接并检查状态代码。

  2. 创建一个广播接收器,连接到具有 web 视图的活动。

  3. 在服务状态码不是 200 时 ping 广播接收器。

  4. 在广播接收的 webView 活动中执行您的任务。


推荐阅读