【问题标题】:Open specific activity based on current value of URL in webView根据 webView 中 URL 的当前值打开特定活动
【发布时间】:2020-05-21 18:47:30
【问题描述】:

我有一个 URL (www.abc.com),我在我的应用程序内的活动的 web 视图中打开了它。我想开发一个流程,这样当用户在 webview 中浏览 URL 时到达 webview 中的特定 URL,假设 www.abc.com/foo 然后应用程序应该处理它并打开一个特定的活动。如何捕获 URL 并根据 URL 的当前值打开特定活动

任何帮助将不胜感激。提前致谢

【问题讨论】:

  • 所以如果我将深层链接意图过滤器添加到活动中,它会从 web 视图中观察我当前的 URL 值吗?
  • android 的 webview 类不会这样做。为此,您需要重写 shouldOverrideUrlLoading 方法并编写您的逻辑。但是像 chrome/firefox 等浏览器会自动为你做这件事

标签: java android kotlin url webview


【解决方案1】:

这对我有用

创建一个webClient 并覆盖onPageFinished 方法以在每个页面加载后获取URL的当前值

    wv_content.webViewClient = object : WebViewClient() {
        override fun onPageFinished(view: WebView?, url: String?) {
            Log.v("Current value of URL: ", URL)

            //handle URL like open an activity based on the value of URL
            handleCurrentUrl(url)

            super.onPageFinished(view, url)
            pb_loading.visibility = View.GONE
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-09
    • 1970-01-01
    • 2018-11-08
    相关资源
    最近更新 更多