Notificações de alerta

Uma notificação é uma mensagem que o Android exibe fora de um aplicativo para fornecer atualizações, lembretes e outras informações oportunas aos usuários. No Android Automotive OS, uma notificação pode ser exibida como uma notificação de alerta (HUN) ou no painel de notificação (ou em ambos). Este artigo explica como personalizar HUNs.

Notificação

Figura 1. Notificação

Ao substituir os valores de configuração detalhados abaixo, você pode personalizar os HUNs de duas maneiras:

  • Posição
  • Animação

Ao personalizar um HUN, certifique-se de determinar como ele será afetado pela ordem Z das barras do sistema. Se a ordem Z de uma barra do sistema for 10 ou superior, ela aparecerá no topo dos HUNs. Por exemplo, se o HUN for exibido na parte superior da tela e a barra superior do sistema tiver uma ordem Z de 10, a barra superior do sistema será exibida na parte superior do HUN, a menos que o auxiliar de animação HUN seja personalizado para compensar o final. posição do HUN pela altura da barra superior do sistema.

Documentação relacionada

config_showHeadsUpNotificationOnBottom

Um HUN pode ser exibido na parte superior ou inferior da tela com base no valor de configuração config_showHeadsUpNotificationOnBottom . Definido como false por padrão, esse valor define a posição final da notificação na parte superior da tela.

Notificação padrão

Figura 2. Notificação de Alerta Padrão

config_headsUpNotificationAnimationHelper

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

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

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

Ajudante de animação superior

Figura 3. Auxiliar de animação superior

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

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

Auxiliar de animação inferior

Figura 4. Auxiliar de animação inferior

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

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

Assistente de animação certoAssistente de animação certo

Figura 5. Assistente de Animação Direito

Ajudante de animação personalizada

Caso seja necessária uma personalização adicional, as classes auxiliares do animador podem ser substituídas ou uma classe auxiliar do animador personalizada pode ser usada, desde que a classe de ajuda implemente a interface HeadsUpNotificationAnimationHelper , conforme mostrado neste trecho 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);
   }
}