Como posso verificar se o Chrome suporta guias personalizadas do Chrome?

Tenho uma atividade que carrega um URL externo em uma visualização da Web no meu aplicativo. Gostaria de usar as guias personalizadas do Chrome quando estiverem disponíveis, mas suporte dispositivos que talvez não tenham uma versão do Chrome compatível.

No caso de CustomTabs não ser suportado, eu gostaria de usar meu código antigo, mas use o CustomTabsIntent.Builder () quando eles estiverem. O código antigo carrega o conteúdo em um WebView contido em uma Atividade onde ainda posso gerenciar o ActionBar.

Gostaria de escrever um método auxiliar que me diga se é suportado, mas não sei ao certo como. As informações na página do desenvolvedor são bem pequenas:https://developer.chrome.com/multidevice/android/customtabs

Diz que, se você ligar com êxito, as guias personalizadas poderão ser usadas com segurança. Existe uma maneira fácil de vincular para testar isso?

Assim, eu assumo:

Intent serviceIntent = new Intent("android.support.customtabs.action.CustomTabsService");
serviceIntent.setPackage("com.android.chrome");
boolean customTabsSupported = bindService(serviceIntent, new CustomTabsServiceConnection() {
            @Override
            public void onCustomTabsServiceConnected(final ComponentName componentName, final CustomTabsClient customTabsClient) {}

            @Override
            public void onServiceDisconnected(final ComponentName name) {}
        },
        Context.BIND_AUTO_CREATE | Context.BIND_WAIVE_PRIORITY);

if (customTabsSupported) {
    // is supported
}

questionAnswers(5)

yourAnswerToTheQuestion