如何从 CustomTabsClient 获取 Url 更改
How to get Url change from CustomTabsClient
如何在页面变化时获取url,使用CustomTabsClient
?
例如 WebView 有一个方法:
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon){}
我需要 CustomTabs
的类似方法。
我找到了这个:
mClient.newSession(new CustomTabsCallback(){
@Override
public void onNavigationEvent(int navigationEvent, Bundle extras) {
super.onNavigationEvent(navigationEvent, extras);
}
@Override
public void extraCallback(String callbackName, Bundle args) {
super.extraCallback(callbackName, args);
}
});
但我不确定这是否是我需要的。
How to get the url when the page changes, using CustomTabsClient
?
很遗憾,你不能。 Chromium 错误跟踪器上还有一个未解决的问题:
https://code.google.com/p/chromium/issues/detail?id=543542
您现在唯一能做的就是知道选项卡何时开始或完成加载页面,但您无法检索 URL:
mClient.newSession(new CustomTabsCallback(){
@Override
public void onNavigationEvent(int navigationEvent, Bundle extras) {
Log.w(TAG, "onNavigationEvent: Code = " + navigationEvent);
switch (navigationEvent) {
case NAVIGATION_STARTED:
// Sent when the tab has started loading a page.
break;
case NAVIGATION_FINISHED:
// Sent when the tab has finished loading a page.
break;
case NAVIGATION_FAILED:
// Sent when the tab couldn't finish loading due to a failure.
break;
case NAVIGATION_ABORTED:
// Sent when loading was aborted by a user action before it finishes like clicking on a link
// or refreshing the page.
break;
}
}
});
如何在页面变化时获取url,使用CustomTabsClient
?
例如 WebView 有一个方法:
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon){}
我需要 CustomTabs
的类似方法。
我找到了这个:
mClient.newSession(new CustomTabsCallback(){
@Override
public void onNavigationEvent(int navigationEvent, Bundle extras) {
super.onNavigationEvent(navigationEvent, extras);
}
@Override
public void extraCallback(String callbackName, Bundle args) {
super.extraCallback(callbackName, args);
}
});
但我不确定这是否是我需要的。
How to get the url when the page changes, using
CustomTabsClient
?
很遗憾,你不能。 Chromium 错误跟踪器上还有一个未解决的问题:
https://code.google.com/p/chromium/issues/detail?id=543542
您现在唯一能做的就是知道选项卡何时开始或完成加载页面,但您无法检索 URL:
mClient.newSession(new CustomTabsCallback(){
@Override
public void onNavigationEvent(int navigationEvent, Bundle extras) {
Log.w(TAG, "onNavigationEvent: Code = " + navigationEvent);
switch (navigationEvent) {
case NAVIGATION_STARTED:
// Sent when the tab has started loading a page.
break;
case NAVIGATION_FINISHED:
// Sent when the tab has finished loading a page.
break;
case NAVIGATION_FAILED:
// Sent when the tab couldn't finish loading due to a failure.
break;
case NAVIGATION_ABORTED:
// Sent when loading was aborted by a user action before it finishes like clicking on a link
// or refreshing the page.
break;
}
}
});