Notificações de alerta

Uma notificação é uma mensagem que o Android mostra fora de um app para mostrar atualizações, lembretes e outras informações oportunas aos usuários. No Android Automotive OS, um pode ser exibida como uma notificação de alerta (HUN, na sigla em inglês) ou no Painel de notificações (ou em ambos). Esta página explica como personalizar as HUNs.

Notificação

Figura 1. Notificação

Ao substituir os valores de configuração detalhados abaixo, é possível personalizar as HUNs de duas maneiras:

  • Cargo
  • Animação

Ao personalizar uma HUN, lembre-se de determinar como ela é afetada pela ordem Z de barras de sistema. Se a ordem Z de uma barra do sistema for 10 ou superior, ela aparecerá sobre as HUNs. Por exemplo, se a HUN for exibida na parte superior da tela a barra de sistema tem uma ordem Z de 10, a barra de sistema superior é exibida na parte superior da HUN a menos que o assistente de animação da HUN seja personalizado para deslocar a posição final do HUN pela altura da barra superior do sistema.

Documentação relacionada

config_showHeadsUpNotificationOnBottom

Uma HUN pode ser mostrada na parte de cima ou de baixo da tela com base no valor de configuração config_showHeadsUpNotificationOnBottom. Se definido como false por padrão, esse valor define a posição final do notificação na parte superior da tela.

Notificação padrão

Figura 2. HUN padrão

config_headsUpNotificationAnimationHelper

Há várias maneiras de a notificação aparecer na tela e sair da tela. Um conjunto de classes auxiliares de animador padrão é fornecido e pode será alterado substituindo config_headsUpNotificationAnimationHelper.

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

Anima a HUN para passar da posição inicial para a posição final, para visível e, depois, para invisível.

Principais assistentes de animação

Figura 3. Principais assistentes de animação

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

Anima a HUN para a transição da posição inicial para a posição final, para visível e, depois, para invisível.

Assistente de animação da parte de baixo

Figura 4. Assistente de animação da parte de baixo

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

Anima a HUN para a transição da posição inicial à esquerda para o para a posição final, visível e invisível.

Assistente de animação à direita Assistente de animação à direita

Figura 5. Assistente de animação à direita

Assistente de animação personalizada

Se for necessária mais personalização, o assistente do animador As classes podem ser substituídas ou uma classe auxiliar de animador personalizada pode ser usada desde que a classe de ajuda implemente o HeadsUpNotificationAnimationHelper interface, conforme mostrado neste snippet de código:

[...]

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);
   }
}