Karty niestandardowe to świetna opcja umożliwiająca tworzenie niestandardowych przeglądarek bezpośrednio w aplikacji, ale nie jest to jedyna opcja. Karty niestandardowe to zbiór opcji opcji konfigurowalnych, które są wysyłane do preferowanej przeglądarki użytkownika na podstawie systemu intencji. Każda przeglądarka musi samodzielnie wdrożyć różne opcje. Dostępność funkcji kart niestandardowych może się różnić w różnych przeglądarkach na Androida z powodu różnic w wdrożeniu.
Poniżej znajdziesz porównanie niektórych przeglądarek w ekosystemie Androida. Większość przeglądarek na Androida zapewnia pewien poziom obsługi. Tabele nie mają być wyczerpujące, ale mają ilustrować poziom obsługi, jaki możesz uzyskać. Sprawdź, jakie przeglądarki domyślne mają użytkownicy Twojej aplikacji, i zapewnij sobie ochronę przed atakami.
CustomTabsIntent.Builder
CustomTabsIntent.Builder
tworzy karty niestandardowe. Istnieją różne sposoby konfigurowania karty niestandardowej, aby jak najlepiej dopasować ją do aplikacji. W tym celu możesz skorzystać z kilku wbudowanych metod opisanych poniżej.
addDefaultShareMenuItem()
addDefaultShareMenuItem() dodaje domyślny przycisk udostępniania do paska narzędzi kart niestandardowych, co pozwala użytkownikowi udostępniać bieżącą stronę internetową za pomocą różnych aplikacji na urządzeniu.
addMenuItem()
Dodaje pozycję menu.
addToolbarItem()
Dodaje do karty niestandardowej przycisk działania. W ten sposób możesz dodać wiele przycisków.
enableUrlBarHiding()
Umożliwia ukrycie paska adresu URL podczas przewijania strony w dół.
setActionButton()
Ustawia przycisk działania wyświetlany na pasku narzędzi z domyślnym zachowaniem zabarwiania.
setCloseButtonIcon()
Ustawia niestandardowy przycisk Zamknij, który jest widoczny na pasku narzędzi.
setCloseButtonPosition()
Ustawia ikonę przycisku Zamknij na karcie niestandardowej.
setColorScheme()
Na karcie niestandardowej ustawia schemat kolorów, który ma być zastosowany w interfejsie.
setColorSchemeParams()
Na karcie niestandardowej ustawia schemat kolorów, który ma być zastosowany w interfejsie.
setDefaultColorSchemeParams()
Ustawia wartość CustomTabColorSchemeParams()
dla danego schematu kolorów. Dzięki temu możesz określić 2 różne kolory paska narzędzi dla schematów jasnych i ciemnych.
setDefaultShareMenuItemEnabled()
Określ, czy do menu ma być dodawany domyślny element udostępniania.
setExitAnimations()
Ustawia animacje zakończenia.
setInitialActivityHeightPx()
Ustawia początkową wysokość w pikselach dla niestandardowej aktywności w karcie z domyślnym zachowaniem zmiany rozmiaru. Karta niestandardowa będzie działać jak dolna karta. Jest to często nazywane częściową kartą niestandardową.
setNavigationBarColor()
Ustawia kolor paska nawigacyjnego. Nie ma wpływu na wersje interfejsu API starsze niż L.
setNavigationBarDividerColor()
setSecondaryToolbarColor()
Ustawia kolor drugiego paska narzędzi.
setShareState()
Określa stan udostępniania, który powinien być zastosowany do karty niestandardowej.
setShowTitle()
Określa, czy tytuł ma być wyświetlany na karcie niestandardowej.
setStartAnimations()
Ustawia animacje początkowe.
setToolbarColor()
Ustawia kolor paska narzędzi. W Androidzie L i nowszych wersjach ten kolor jest też stosowany na pasku stanu.
setToolbarCornerRadiusDp()
Ustawia promienie górnych narożników paska narzędzi w dp.
setUrlBarHidingEnabled()
Określ, czy pasek adresu URL powinien się ukrywać, gdy użytkownik przewija stronę w dół.
CustomTabsClient
CustomTabsClient
to opcjonalna klasa do komunikacji z CustomTabsService
i tworzenia na jej podstawie CustomTabsSession
.
warmup()
Rozgrzej proces przeglądarki.
CustomTabsSession
CustomTabsSession
to opcjonalna klasa, którą możesz podać instancji CustomTabsIntent.Builder()
. W razie potrzeby możesz użyć tej klasy do obsługi komunikacji z kartą niestandardową.
setEngagementSignalsCallback()
Ustawia wartość EngagementSignalsCallback
, aby odbierać wywołania zwrotne zdarzeń związanych z zaangażowaniem użytkownika na stronie internetowej na karcie.
isEngagementSignalsApiAvailable()
Zwraca informację, 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 prawdopodobnej przyszłej nawigacji do adresu URL. Najpierw należy podać najbardziej prawdopodobny adres URL. Opcjonalnie można podać listę innych prawdopodobnych adresów URL. Są one traktowane jako mniej prawdopodobne niż pierwsza i muszą być posortowane według malejącej kolejności priorytetów. Te dodatkowe adresy URL mogą zostać zignorowane. Wszystkie wcześniejsze wywołania tej metody zostaną zdepriorytetyzowane.