2016-05-16 3 views
0

У меня есть уведомление, представлено с помощью следующего кода:HeadsUp Уведомление не отображается на KitKat

// Create the notification 
    android.app.Notification systemNotification = new NotificationCompat.Builder(context) 
      // Set notification data and appearance 
      .setContentTitle(notification.getNotificationLabel()) 
      .setContentText(notification.getMessage()) 
      .setSmallIcon(notification.getNotificationDrawable()) 
      .setWhen(new Date().getTime()) 

      // Set notification options 
      .setCategory(NotificationCompat.CATEGORY_MESSAGE) 
      .setPriority(NotificationCompat.PRIORITY_HIGH) 
      .setDefaults(NotificationCompat.DEFAULT_ALL) 
      .build() 
    ; 

    NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 

    notificationManager.notify(notification.getNotificationId(), systemNotification); 

При запуске на Леденец и новее, он прекрасно работает и уведомление появляется как в строке состояния и в качестве всплывающего окна уведомление как ожидаемое/желаемое. В Kitkat уведомление появляется только в строке состояния, нет всплывающего уведомления. Я все еще могу открыть уведомление из строки состояния, и все выглядит и работает нормально, это просто сообщение всплывающего окна, которое отсутствует.

Некоторые из вещей, которые я пытался до сих пор:

  • различных вариантов setDefaults
  • различных вариантов setPriority
  • подтвердил, что уведомления находятся на в панели настроек системы для применения

ответ

2

На KitKat, уведомление появляется только в строке состояния, нет всплывающего уведомления

Это происходит потому, что поведение уведомления хэдза-ап было добавлено в Android 5.0 и не существовало в предыдущих версиях Android.

+0

Спасибо, это было в значительной степени моим предположением, но я не мог найти ничего, что прямо сказано об этом, особенно от Google. –

+0

@DavidBerry: http://developer.android.com/about/versions/android-5.0-changes.html#BehaviorNotifications – CommonsWare

+0

Отлично! Только то, что мне нужно для QA. –

0

Убедитесь, что на устройстве KitKat установлены уведомления о всплывающих окнах.