检测打开的url

ni65a41a  于 2021-07-05  发布在  Java
关注(0)|答案(1)|浏览(282)

我有一个android应用程序,在某些地方它可能有url(例如,从推送通知,在一些视图中从be中提取文本,等等)。我的问题是:有没有什么快速而好的方法来检测应用程序打开一个url并将其重定向到web浏览器?我想检查打开的网址,在某些情况下,停止应用程序打开网页浏览器,并做我的自定义操作,而不是。谢谢

bvjveswy

bvjveswy1#

不是直接的。如果您使用的是intent-action视图并像这样传递

ContextCompat.startActivity(
            context,
            Intent(Intent.ACTION_VIEW, Uri.parse(appLink)),
            null
        )

你可以用一个广播管理器把它发送过去 onReceive 方法可以调用该代码从广播启动web浏览器。
您也许可以使用一个webview并使用此代码截获所有请求调用

mWebView?.setWebViewClient(object : WebViewClient() {

        override fun shouldInterceptRequest(
            view: WebView?,
            request: WebResourceRequest?
        ): WebResourceResponse? {
            LogUtils.d(request?.url)
            return super.shouldInterceptRequest(view, request)
        }
    })

相关问题