android – 如何从CustomTabsClient获取Url更改

前端之家收集整理的这篇文章主要介绍了android – 如何从CustomTabsClient获取Url更改前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何使用CustomTabsClient在页面更改时获取URL?

例如,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 bug跟踪器上还有一个未解决的问题:

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;
        }
    }
});
原文链接:https://www.f2er.com/android/308879.html

猜你在找的Android相关文章