Korzystanie z treści internetowych w aplikacji na Androida

Android umożliwia wykorzystanie możliwości internetu w aplikacjach. Dzięki temu możesz korzystać z elastyczności i wydajności, jaką daje możliwość wyświetlania określonych typów treści.

Dzięki temu możesz płynnie integrować istniejące treści z internetu z aplikacją na Androida, np. wyświetlać kanał wiadomości, interaktywne samouczki, reklamy displayowe, a nawet hostować minigrę bez konieczności tworzenia wszystkiego od podstaw. Można je traktować jako okno na internet w aplikacji. Istnieją 2 sposoby umieszczania treści z internetu w aplikacji:

  • WebView: wyświetla treści z internetu, które kontrolujesz, w miejscu, w którym chcesz mieć dużą elastyczność w zakresie dostosowywania lub aktualizowania interfejsu.
  • Custom Tabs: pełne przeglądanie w aplikacji obsługiwane przez domyślną przeglądarkę użytkownika (zobacz obsługę przeglądarek), gdy użytkownicy klikną link i chcesz, aby pozostali w aplikacji, zamiast przechodzić do przeglądarki zewnętrznej, z większością funkcji przeglądania dostępnych od razu.
Aplikacja na Androida otwarta w Google Play z wyróżnionym głównym widokiem internetowym. Zaznaczona karta niestandardowa otwarta na stronie internetowej Android dla deweloperów.
Rysunek 1. `WebView` (po lewej) i `Custom Tab` (po prawej).

Dlaczego warto umieszczać treści z internetu?

Umieszczanie treści z internetu w aplikacji ma kilka zalet:

  • Wydajność: możesz ponownie używać kodu z witryny. Wykorzystaj istniejące technologie i treści internetowe.
  • Integracja: używanie w aplikacji treści zewnętrznych od dostawców zewnętrznych, takich jak multimedia i reklamy.
  • Elastyczność: dynamicznie aktualizuj treści bez ograniczeń związanych ze wstępnie zdefiniowanymi interfejsami użytkownika i bez konieczności publikowania aktualizacji aplikacji.

Kiedy używać treści z internetu?

Istnieją 3 główne przypadki użycia internetu w aplikacji na Androida:

1. Umieszczanie treści z internetu w aplikacji jako treści głównej lub dodatkowej: użyj WebView.

  • wyświetlać własne treści z internetu w trybie inline jako główną funkcję, gdy chcesz mieć dużą elastyczność w dostosowywaniu lub aktualizowaniu interfejsu;
  • wyświetlać innych treści, takich jak reklamy, warunki prawne i przepisy lub inne treści osób trzecich, w trybie inline lub w oknie w aplikacji;
Aplikacja na Androida otwarta w Google Play z głównym widokiem internetowym wyróżnionym w czerwonym polu Otwarta aplikacja na Androida z tekstem pomocniczym w czerwonym polu.
Rysunek 2. Treści z internetu umieszczone w aplikacji za pomocą komponentów `WebView`jako treści główne (po lewej) i treści pomocnicze (po prawej).

2. Przeglądanie w aplikacji za pomocą Custom Tabs lub WebView w bardziej zaawansowanych przypadkach użycia

  • zapewnienie pełnej obsługi przeglądania w aplikacji, gdy użytkownicy klikną link i chcesz, aby pozostali w aplikacji, zamiast przechodzić do przeglądarki zewnętrznej;
    • Uwaga: w przypadku urządzeń z dużym ekranem, takich jak tablety i urządzenia składane, dostępne są dodatkowe opcje, które pomagają aplikacjom wykorzystać dodatkowe miejsce:
    • Aplikacje mogą otwierać linki internetowe na podzielonym ekranie, korzystając z funkcji uruchamiania sąsiedniego okna. Dzięki temu użytkownicy mogą jednocześnie korzystać z Twojej aplikacji i przeglądarki. LUB
    • Custom Tabs mają opcję panelu bocznego, który można otworzyć w tym samym zadaniu, ale obok istniejącej zawartości aplikacji.
  • Custom Tab jest obsługiwany przez przeglądarkę domyślną użytkownika, jeśli obsługuje ona Custom Tabs.
    • Możesz użyć WebView i zapewnić użytkownikom możliwość dostosowania przeglądania w aplikacji, ale zalecamy Custom Tabs, aby zapewnić gotowe rozwiązanie i płynne przejście, gdy użytkownik chce otworzyć link internetowy w przeglądarce.
Strona internetowa z linkiem w aplikacji w czerwonym polu po lewej stronie i przeglądarką w aplikacji po prawej stronie.
Rysunek 3. Kliknięcie linku w aplikacji (po lewej) i otwarcie przeglądarki w aplikacji (po prawej).

3. procesy logowania lub uwierzytelniania w aplikacji.

Zalecanym przez Androida podejściem jest tworzenie procesów logowania lub uwierzytelniania za pomocą Credential Manager. Jeśli okaże się, że nadal musisz używać wbudowanej przeglądarki, skorzystaj z tych wskazówek:

  • Niektóre aplikacje używają WebView, aby udostępniać użytkownikom procesy logowania, w tym używanie nazwy użytkownika i klucza dostępu (lub hasła) powiązanych z aplikacją. Dzięki temu deweloperzy mogą ujednolicić procesy uwierzytelniania na różnych platformach.
  • Jeśli chcesz przekierować użytkownika do zewnętrznego dostawcy tożsamości lub strony logowania, np. „Zaloguj się przez…”, użyj Custom Tabs. Uruchomienie Custom Tab pomaga chronić dane logowania użytkownika, ponieważ są one przechowywane tylko w witrynie zewnętrznej.

Więcej informacji o używaniu komponentów WebView do uwierzytelniania znajdziesz w artykule Uwierzytelnianie użytkowników za pomocą komponentu WebView. Informacje o uruchamianiu Custom Tab znajdziesz w artykule Omówienie kart niestandardowych Chrome na Androidzie.

Pole logowania w aplikacji z WebView po lewej stronie. Logowanie przez inną usługę z kartą niestandardową po prawej stronie.
Rysunek 4. Pole logowania w aplikacji (po lewej) i logowanie w aplikacji innej firmy otwarte na
`karcie niestandardowej` (po prawej).