1

カスタムタブ

<intent-filter> 
      <action android:name="android.intent.action.VIEW" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <data 
       android:host="www.example.com" 
       android:scheme="http" /> 
    </intent-filter> 

を次のように私は、すべてのURLの私のドメインからを処理するためにapplinksを実装しているが、私はcustomtabs .I午前中に同じドメインからのいくつかのリンクを開きたいですcustomtabs

CustomTabsServiceConnection connection = new CustomTabsServiceConnection() { 
     @Override 
     public void onCustomTabsServiceConnected(ComponentName componentName, CustomTabsClient client) { 
      client.warmup(0L); 
      CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder(); 
      builder.setInstantAppsEnabled(false); 
      builder.setToolbarColor(context.getResources().getColor(R.color.pure_white)); 
      builder.setSecondaryToolbarColor(context.getResources().getColor(R.color.pure_white)); 
      builder.setShowTitle(true); 
      CustomTabsIntent customTabsIntent = builder.build(); 
      customTabsIntent.launchUrl(context,Uri.parse("http://www.example.com/unhandled")); 
     } 
     @Override 
     public void onServiceDisconnected(ComponentName name) {} 
    }; 
    CustomTabsClient.bindCustomTabsService(context, "com.android.chrome", connection); 

にそれらのリンクを呼び出すために、このロジックを実装するが、これらのリンクは、私のapplinkの意図によって捕獲され、私が行方不明です、それはloop.What中に行きましたか?任意のアイデアや提案が役に立ちます。

答えて

1

CustomTabsを起動するインテントのパッケージを設定すると、強制的にChromeを開く必要があります。また

CustomTabsIntent customTabsIntent = builder.build(); 
customTabsIntent.intent.setPackage("com.android.chrome"); 
customTabsIntent.launchUrl(
    context,Uri.parse("http://www.example.com/unhandled")); 

、クロムカスタムタブをサポートする唯一のブラウザではないので、私は best practicesを、以下、同様に他のブラウザをサポートしているお勧めします。

+0

ありがとうございました。 – Abilash

関連する問題