具有onPageFinished()和onPageStart()行为的自定义选项卡

时间:2016-04-04 05:28:08

标签: android webview chrome-custom-tabs appauth

我必须将自定义标签应用到使用具有OAuth功能的webview登录的应用中。有没有办法让onPageStart()和onPageFinished()具有与Chrome自定义标签相同的行为?

2 个答案:

答案 0 :(得分:3)

如果您使用Chrome自定义标签来执行OAuth(顺便说一句 - 比WebView更安全和可用),那么您应该考虑使用开源AppAuth库。

即使您不直接依赖库,也可以使用Chrome自定义标签实现OAuth流程。

答案 1 :(得分:1)

您可以实施CustomTabsCallback并覆盖onNavigationEvent。使用NAVIGATION_STARTEDNAVIGATION_FINISHED

创建新会话时,需要将CustomTabsCallback作为参数传递。看一下this样本。

限制是您无法访问正在加载的网址,特别是当用户离开用于打开自定义标签的网址时。