Powiadomienia z ostrzeżeniem

Powiadomienie to wiadomość wyświetlana przez system Android poza aplikacją, która zawiera aktualne informacje, przypomnienia i inne informacje. W systemie operacyjnym Android Automotive powiadomienie może być wyświetlane jako powiadomienie w ramce funkcji heads-up (HUN) lub na panelu powiadomień (lub w obu miejscach). Z tej strony dowiesz się, jak dostosowywać HUN.

Powiadomienie

Rysunek 1. Powiadomienie

Zastępując wartości konfiguracji podane poniżej, możesz dostosowywać HUN na 2 sposoby:

  • Pozycja
  • Animacja

Podczas dostosowywania niestandardowego elementu treści upewnij się, że uwzględniasz wpływ rzędu Z pasków systemu. Jeśli kolejność nakładania elementów paska systemu wynosi 10 lub więcej, pasek ten wyświetla się nad paskami HUN. Jeśli na przykład baner wyświetla się u góry ekranu, a górny pasek systemu ma porządek Z równy 10, ten pasek będzie wyświetlany nad banerem chyba że pomocnik animacji banera został dostosowany tak, aby przesunąć jego końcową pozycję o wysokość górnego paska systemu.

Powiązana dokumentacja

config_showHeadsUpNotificationOnBottom

Użytkownik może wyświetlić HUN u góry lub u dołu ekranu w zależności od wartości konfiguracji config_showHeadsUpNotificationOnBottom. Domyślnie jest to false. Ta wartość określa ostateczną pozycję powiadomienia w górnej części ekranu.

Powiadomienie domyślne

Rysunek 2. Domyślny HUN

config_headsUpNotificationAnimationHelper

Powiadomienia mogą pojawiać się na ekranie i z niego znikać na różne sposoby. Dostępny jest zestaw domyślnych klas pomocniczych animatora, które można zastąpić, zastępując je parametrem config_headsUpNotificationAnimationHelper.

com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper

Przejście z poziomu początkowego do końcowego, z widocznego do niewidocznego.

Najlepszy pomocnik w tworzeniu animacji

Rysunek 3. Najlepszy pomocnik w tworzeniu animacji

com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper

Przejście z pozycji początkowej do końcowej, widocznej, a następnie niewidocznej.

Pomoc dotycząca animacji dolnej

Rysunek 4. Pomoc dotycząca animacji dolnej

com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper

Animacja przejścia HUN z początkowej pozycji po lewej do końcowej pozycji, a następnie do widocznej i niewidocznej.

Pomocnik animacji po prawej stronie Pomocnik animacji po prawej stronie

Rysunek 5. Prawy pomocnik animacji

Pomoc dotycząca niestandardowych animacji

Jeśli wymagane są dodatkowe opcje dostosowywania, możesz zastąpić klasy pomocnicze animatora lub użyć niestandardowej klasy pomocniczej animatora, o ile implementuje ona interfejs HeadsUpNotificationAnimationHelper, jak pokazano w tym fragmencie kodu:

[...]

public class SampleAnimationHelper implements
       HeadsUpNotificationAnimationHelper {

   @Override
   public AnimatorSet getAnimateInAnimator(Context context, View view) {
       return (AnimatorSet) AnimatorInflater.loadAnimator(
               context, R.animator.heads_up_notification_transition_in);
   }

   @Override
   public AnimatorSet getAnimateOutAnimator(Context context, View view) {
       return (AnimatorSet) AnimatorInflater.loadAnimator(
               context, R.animator.heads_up_notification_transition_out);
   }

   @Override
   public void resetHUNPosition(View view) {
       view.setY(-1 * view.getHeight());
       view.setAlpha(0);
   }
}