Obraz w obrazie

Ilustracja przedstawiająca symbol PiP i logo Play

Obraz w obrazie (PIP) to rodzaj trybu wielu okien przeznaczony do działań, które odtwarzają wideo pełnoekranowe. Umożliwia użytkownikowi oglądanie filmu w małym oknie przypiętym do rogu ekranu podczas przełączania aplikacji lub przeglądania treści na głównym ekranie.

Ilustracja 1. Użytkownicy mogą kontynuować oglądanie filmu nawet wtedy, gdy nie korzystają z Twojej aplikacji

Wnioski

  • Upewnij się, że elementy interfejsu są ukryte, a odtwarzanie wideo jest kontynuowane, gdy aktywność jest w trybie obrazu w obrazie.
  • Wyłącz płynną zmianę rozmiaru w przypadku treści innych niż filmy.
  • Odtwarzanie filmów z minimalnym interfejsem zapewnia najlepszą wygodę.
  • Unikaj wyświetlania czegokolwiek poza treściami wideo.

Dodawanie do aplikacji obsługi trybu obrazu w obrazie

Domyślnie system nie obsługuje automatycznie trybu obrazu w obrazie w przypadku aplikacji. Aby korzystać z tej funkcji, należy ją zadeklarować.

Okno PiP pojawi się w najwyższej warstwie ekranu, w rogu wybranym przez system.

Opcje

Domyślnie Android udostępnia elementy sterujące trybu obrazu w obrazie, które umożliwiają zamknięcie okna, rozszerzenie go z powrotem do pełnego ekranu, zmianę ustawień i odtwarzanie multimediów. Aplikacja może dodawać niestandardowe działania i odpowiednie ikony, aby umożliwić użytkownikom interakcję z treściami w trybie obraz w obrazie.

Użytkownik może wyświetlić te elementy sterujące w menu okna PiP, klikając okno na urządzeniu mobilnym lub wybierając menu na pilocie telewizora. Jeśli aplikacja ma aktywną sesję multimediów, wyświetlają się też elementy sterujące odtwarzaniem, wstrzymywaniem, następnym i poprzednim. Dowiedz się, jak dodać te ustawienia.

W trybie obrazu w obrazie aktywność jest wyświetlana w małym oknie. W tym trybie użytkownicy nie mogą wchodzić w interakcje z innymi elementami interfejsu aplikacji, a szczegóły małych elementów interfejsu w oknie obrazu w obrazie mogą być trudne do zobaczenia.

Interfejs użytkownika pokazujący domyślne elementy sterujące obrazem w obrazie

Domyślne elementy sterujące PiP.

Przykład niestandardowych elementów sterujących PIP

Przykład niestandardowych elementów sterujących PIP.

Wykorzystanie

Umożliwia użytkownikom kontynuowanie oglądania filmu nie tylko w aplikacji, ale też na innych urządzeniach. Aplikacja kontroluje, kiedy bieżąca aktywność przechodzi w tryb obrazu w obrazie. Może to być interakcja, np. opuszczenie bieżącego widoku lub przesunięcie palcem w górę, aby przejść do ekranu głównego.

Oto kilka przykładów możliwych działań:

  • Aktywność może przejść w tryb obrazu w obrazie, gdy użytkownik naciśnie przycisk ekranu głównego lub przesunie palcem w górę do ekranu głównego. Dzięki temu Mapy Google mogą nadal wyświetlać wskazówki, gdy użytkownik wykonuje w tym samym czasie inne czynności.

    Ilustracja 4. Obraz w obrazie używany do kontynuowania nawigacji
  • Aplikacja może przenieść film do trybu obraz w obrazie, gdy użytkownik wróci z filmu, aby przeglądać inne treści.

  • Aplikacja może przełączyć film w tryb obrazu w obrazie, gdy użytkownik ogląda końcówkę odcinka. Na ekranie głównym wyświetlają się informacje promocyjne lub podsumowujące dotyczące następnego odcinka serialu.

  • Aplikacja może umożliwiać użytkownikom dodawanie do kolejki dodatkowych treści podczas oglądania filmu. Odtwarzanie filmu będzie kontynuowane w trybie obrazu w obrazie, a na ekranie głównym będzie wyświetlana aktywność wyboru treści.

Używaj wzorca interakcji, który uzupełnia wrażenia z oglądania, ale nie przeszkadza w odbiorze. Jeśli na przykład film znajduje się na końcu odcinka treści, wejście w tryb obrazu w obrazie po opuszczeniu ekranu głównego będzie wymagało dodatkowego działania użytkownika, aby powrócić i zatrzymać odtwarzanie lub poruszać się po małych elementach sterujących.

W aplikacji użytkownik może wybrać nowy film podczas przeglądania treści na ekranie głównym, gdy aktywność odtwarzania filmu jest w trybie obrazu w obrazie. Odtwarzaj nowy film w ramach istniejącej aktywności odtwarzania w trybie pełnoekranowym, zamiast uruchamiać nową aktywność, która może zmylić użytkownika.

Wzorce interakcji

Użytkownicy mogą przeciągać okno PIP w inne miejsce.

Kliknij okno, aby wyświetlić przełącznik pełnego ekranu, przycisk zamykania, przycisk ustawień i działania niestandardowe udostępniane przez aplikację (np. elementy sterujące odtwarzaniem).

Ilustracja 5. Domyślne elementy sterujące trybu obraz w obrazie

Kliknij dwukrotnie okno, aby przełączać się między bieżącym rozmiarem obrazu w obrazie a maksymalnym lub minimalnym rozmiarem obrazu w obrazie. Na przykład kliknięcie dwukrotnie zmaksymalizowanego okna spowoduje jego zminimalizowanie i odwrotnie.

Ilustracja 6. Przełączanie między minimalnym a maksymalnym rozmiarem obrazu w obrazie za pomocą dwukrotnego kliknięcia

Schowaj okno, przeciągając je do lewej lub prawej krawędzi. Aby przywrócić okno, kliknij widoczną część schowanego okna lub przeciągnij je.

Rysunek 7. Obraz w obrazie schowany

Zmień rozmiar okna PIP, używając gestu uszczypnięcia.

Przesuń okno obrazu w obrazie w dół, aby je usunąć.

Ilustracja 8. Przesuwanie w dół

Przejścia

Aby zapewnić użytkownikom płynne przejście do trybu obrazu w obrazie i z niego, dostosuj przejścia wejścia i wyjścia.

Płynne przejście do animacji obrazu w obrazie

Gdy użytkownik włączy tryb obrazu w obrazie, bieżąca aktywność zmniejszy się z pełnego ekranu do małego okna, w którym nadal będą wyświetlane treści bez nakładania interfejsu.

W Androidzie 12 wprowadziliśmy zmiany wizualne w przejściach między oknami pełnoekranowymi a oknami w trybie obraz w obrazie. Po wdrożeniu te aktualizacje będą automatycznie dostosowywać się do tabletów i urządzeń składanych.

Bez tych aktualizacji przejścia działają, ale są mniej dopracowane. Na przykład okno PIP może tymczasowo zniknąć podczas przejścia.

Od Androida 12 flaga PictureInPictureParams.Builder.setAutoEnterEnabled(true) zapewnia płynniejsze przejścia gestów (np. przesunięcie w górę do strony głównej). Zalecamy to w przypadku aplikacji ENTERTAINMENT, COMMUNICATIONVIDEO_PLAYER.

Bez tej flagi przejścia gestami zmniejszają okno do ikony aplikacji, zanim ponownie pojawi się ono jako okno funkcji PIP (jak pokazano na filmie 1).

Mniej dopracowane przejście, gdy funkcja obrazu w obrazie nie jest prawidłowo zaimplementowana.setAutoEnterEnabled

Ulepszone przejście dzięki setAutoEnterEnabled dodanemu do aplikacji.

Płynność obrazu wideo

Gdy wprowadziliśmy funkcję obraz w obrazie w Androidzie 8.0, symbol sourceRectHint wskazywał obszar aktywności widoczny po przejściu do trybu obraz w obrazie, np. granice widoku filmu w odtwarzaczu wideo. Od Androida 12 system operacyjny używa sourceRectHint, aby zapewnić znacznie płynniejszą animację zarówno podczas włączania, jak i wyłączania trybu obrazu w obrazie.

Jeśli aplikacja nie zapewnia odpowiedniego sourceRectHint, przejścia w trybie „obraz w obrazie” nadal działają, ale animacje są mniej dopracowane. Na przykład w filmie 3 widać mniej dopracowany przykład przejścia z trybu pełnoekranowego do trybu obrazu w obrazie: po zmniejszeniu okna pełnoekranowego do rozmiaru okna obrazu w obrazie jest ono zasłonięte czarną nakładką, a następnie ponownie wyświetla film.

Film 3: mniej płynne przejście, gdy funkcja obrazu w obrazie nie ma prawidłowo wdrożonego sourceRectHint

Przykład animacji PiP, która jest sourceRectHintprawidłowo wdrożona, znajdziesz w filmie 2 w poprzedniej sekcji.

Aby uzyskać informacje o tym, jak zapewnić płynne przejście, zapoznaj się z przykładową aplikacją PictureInPicture w Kotlinie na Androida.

Więcej informacji o wdrażaniu trybu obraz w obrazie znajdziesz w dokumentacji dla deweloperów.