Pierwszym krokiem w ramach integracji kart niestandardowych jest dodanie do projektu biblioteki przeglądarki AndroidX. Otwórz plik app/build.gradle i dodaj bibliotekę przeglądarki do sekcji zależności.
dependencies {
…
implementation 'androidx.browser:browser:1.5.0'
}
Otwieranie linku na niestandardowej karcie
Po zainstalowaniu biblioteki androidx.browser/browser
możesz użyć elementu CustomTabsIntent.Builder
, aby utworzyć element CustomTabsIntent
i uruchomić kartę niestandardową, wywołując element launchUrl()
i przekazując element Uri:
String url = "https://developers.android.com";
CustomTabsIntent intent = new CustomTabsIntent.Builder()
.build();
intent.launchUrl(MainActivity.this, Uri.parse(url));
Spowoduje to otwarcie na pełnym ekranie aktywności w niestandardowej karcie, jak widać na poniższym zrzucie ekranu.
Obsługa linków aplikacji na Androida
Domyślnie karty niestandardowe obsługują linki aplikacji na Androida. Oznacza to, że jeśli masz zainstalowaną aplikację YouTube, uruchomienie CustomTabsIntent
z adresem URL filmu z YouTube spowoduje otwarcie aplikacji YouTube, a nie przeglądarki.
Jednak przekazanie CustomTabsSession
do CustomTabIntent
spowoduje przymusowe otwarcie linku w karcie niestandardowej, nawet jeśli odpowiednia aplikacja natywnej jest zainstalowana. Jeśli chcesz zachować domyślne zachowanie polegające na otwieraniu linków internetowych w aplikacji natywnych, musisz dodatkowo postępować zgodnie z instrukcjami sprawdzania, czy link może być obsługiwany przez zainstalowaną aplikację natywną.
Kolejny krok: dowiedz się, jak dostosować wygląd i funkcjonalność karty niestandardowej.