Karty niestandardowe stanowią świetną opcję, dzięki której możesz dostosować przeglądarkę bezpośrednio w aplikacji, ale nie jest to jedna jedyna rzecz. Karty niestandardowe oparte na systemie intencji to zbiór konfigurowalnych żądań opcji, które są wysyłane do preferowanej przeglądarki użytkownika. Każda przeglądarka musi zastosować odpowiednie opcje. Dostępność funkcji kart niestandardowych może się różnić w zależności od przeglądarki na Androidzie z powodu różnic w implementacji.
Poniżej znajduje się porównanie niektórych przeglądarek w ekosystemie Androida. Zdecydowana większość przeglądarek na Androidzie ma pewien poziom obsługi. Tabele nie są wyczerpujące, ale obrazują poziom wsparcia, jakiego prawdopodobnie się spodziewać. Warto sprawdzić domyślne przeglądarki osób korzystających z Twojej aplikacji i kodować się w sposób defensywny.
CustomTabsIntent.Builder
CustomTabsIntent.Builder
tworzy karty niestandardowe. Kartę niestandardową możesz skonfigurować na wiele sposobów, dzięki czemu będzie ona najlepiej łączyć ją z aplikacją dzięki kolekcji wbudowanych metod, które wymieniono poniżej.
addDefaultShareMenuItem()
addDefaultShareMenuItem() dodaje domyślny przycisk udostępniania do paska narzędzi Karty niestandardowe, dzięki czemu użytkownik może udostępniać bieżącą stronę internetową za pomocą różnych aplikacji na urządzeniu.
addMenuItem()
Dodaje pozycję menu.
addToolbarItem()
Dodaje przycisk polecenia do karty niestandardowej. W ten sposób można dodać wiele przycisków.
enableUrlBarHiding()
Włącza ukrywanie paska adresu URL, gdy użytkownik przewija stronę w dół.
setActionButton()
Ustawia przycisk polecenia, który jest wyświetlany na pasku narzędzi w sposób domyślny, czyli przyciemnianie.
setCloseButtonIcon()
Ustawia niestandardowy przycisk zamknięcia wyświetlany na pasku narzędzi.
setCloseButtonPosition()
Ustawia ikonę przycisku zamykania karty niestandardowej.
setColorScheme()
Określa schemat kolorów, który powinien być stosowany w interfejsie użytkownika na karcie niestandardowej.
setColorSchemeParams()
Określa schemat kolorów, który powinien być stosowany w interfejsie użytkownika na karcie niestandardowej.
setDefaultColorSchemeParams()
Ustawia CustomTabColorSchemeParams()
dla danego schematu kolorów. Pozwala to określić 2 różne kolory paska narzędzi dla schematu jasnego i ciemnego.
setDefaultShareMenuItemEnabled()
Określ, czy do menu ma być dodawany domyślny element udostępniania.
setExitAnimations()
Ustawia animacje wyjścia.
setInitialActivityHeightPx()
Określa początkową wysokość aktywności na karcie niestandardowej w pikselach z domyślnym zmianą rozmiaru. Karta niestandardowa będzie działać jak plansza dolna. Takie karty są często określane jako częściowa karta niestandardowa.
setNavigationBarColor()
Ustawia kolor paska nawigacyjnego. Nie ma wpływu na wersje interfejsu API niższe niż L.
setNavigationBarDividerColor()
setSecondaryToolbarColor()
Ustawia kolor dodatkowego paska narzędzi.
setShareState()
Ustawia stan udostępniania, który powinien być stosowany do karty niestandardowej.
setShowTitle()
Określa, czy tytuł ma być wyświetlany na karcie niestandardowej.
setStartAnimations()
Ustawia animację początkową.
setToolbarColor()
Ustawia kolor paska narzędzi. W Androidzie L i nowszych ten kolor jest też stosowany do paska stanu.
setToolbarCornerRadiusDp()
Ustawia górny promień narożnika paska narzędzi w dp.
setUrlBarHidingEnabled()
Określ, czy pasek adresu URL ma się ukrywać, gdy użytkownik przewija stronę w dół.
CustomTabsClient
CustomTabsClient
to opcjonalna klasa do komunikowania się z klasą CustomTabsService
i tworzenia na jej podstawie CustomTabsSession
.
rozgrzewka()
Rozgrzej proces przeglądarki.
CustomTabsSession
CustomTabsSession
to opcjonalna klasa, którą możesz przekazać do instancji CustomTabsIntent.Builder()
. Tych zajęć możesz używać do obsługi komunikacji z użyciem karty niestandardowej.
setEngagementSignalsCallback()
Konfiguruje obiekt EngagementSignalsCallback
, aby otrzymywać wywołania zwrotne dla zdarzeń związanych z zaangażowaniem użytkownika w stronę internetową na karcie.
isEngagementSignalsApiAvailable()
Zwraca, czy interfejs Engagement Signals API jest dostępny. Dostępność interfejsu Engagement Signals API może się zmieniać w czasie działania.
MayLaunchUrl()
Informuje przeglądarkę o prawdopodobnym przejściu na dany adres URL w przyszłości. Najpierw należy podać najbardziej prawdopodobny adres URL. Opcjonalnie możesz podać listę innych prawdopodobnych adresów URL. Są one traktowane jako mniej prawdopodobne niż pierwsze i muszą być posortowane w kolejności malejącej. Takie dodatkowe adresy URL mogą być ignorowane. Wszystkie poprzednie wywołania tej metody będą miały niższy priorytet.