This repository is deprecated. Please use android-browser-helper or androidx.browser instead.
You can learn more about the deprecation and which library you should use by reading Trusted Web Activities, the Lay of the Land.
Chrome Custom Tabs provides a way for an application to customize and interact with a Chrome Activity on Android. This makes the web content feel like being a part of the application, while retaining the full functionality and performance of a complete web browser.
This library is based off (and contains copies of the classes from) the Android Support Library Custom Tabs package. There are known bugs when using custom-tabs-client with AndroidX or with Jetifier (the AndroidX conversion tool). For example, run-time crashes like this bug:
java.lang.IllegalAccessError: Method 'android.os.Bundle android.support.customtabs.CustomTabColorSchemeParams.toBundle()' is inaccessible to class 'androidx.browser.customtabs.CustomTabsIntent$Builder' (declaration of 'androidx.browser.customtabs.CustomTabsIntent$Builder' appears in XYZ.apk)
Please use the Android Browser Helper library instead. It contains the same functionality updated to work with AndroidX.
Using Custom Tabs should be easy. This repository hosts examples and in-depth documentation. The examples are importable as projects into the Android Studio.
We want to hear your feedback! Please create bugs and start discussions using About Chrome"):
Android Build Number (from "Android Settings > About Phone/Tablet"):
Device:
Steps to reproduce:
Observed behavior:
Expected behavior:
Frequency:
Note: we know that the GitHub issue tracker is great! However, since Custom Tabs is mostly driven by Chrome developers, and we want to keep all bugs in one place, we prefer the Chromium issue tracker at the moment.
We accept contributions to Custom Tabs examples and documentation. Please see our contributor's guide.