Webview 重定向问题
Posted
技术标签:
【中文标题】Webview 重定向问题【英文标题】:Webview Redirect Issue 【发布时间】:2017-03-20 11:08:28 【问题描述】:在我的订单支付电子商务应用中,我将用户重定向到 webview。在我的网络视图中,它要求用户使用 Google Plus 登录。当用户单击 Google+ 按钮时,子窗口会打开,并且在成功验证后会将结果发送回父窗口,并且在父窗口中,会发生从登录屏幕到用户来自的页面的重定向。 [前产品详细信息页面、购物车页面等]。
那么这里的问题是当我在 android Webview 中打开链接时
webview.loadUrl(url);
只要用户点击 G+ 重定向并且父页面被删除并且 g+ 身份验证开始,它就会正常打开。成功认证后,父窗口被控制,但此时父窗口不存在,所有父 javascript 对象都被之前的子窗口替换。
我的重定向在错误的地方。
【问题讨论】:
检查一次***.com/questions/19831645/…。 【参考方案1】:getOriginalUrl()
它返回最初为当前页面请求的 URL
getUrl () 并不总是与传递给 WebViewClient.onPageStarted 的 URL 相同,因为虽然该 URL 的加载已经开始,但当前页面可能没有改变。
getOriginalUrl () 获取当前页面的原始 URL。这并不总是与传递给 WebViewClient.onPageStarted 的 URL 相同,因为尽管该 URL 的加载已经开始,但当前页面可能没有改变。此外,可能有重定向导致与最初请求的 URL 不同。
【讨论】:
我不想要 url,我希望在子窗口关闭时 webview 之间进行通信,然后我想发送他的回复,就像在与 google 共享用户 ID 成功认证后一样,该用户 ID 在 javascript 对象中接收到通信父 webview。当我的父 webview 在接收信息时重定向。以上是关于Webview 重定向问题的主要内容,如果未能解决你的问题,请参考以下文章