2014-11-04 110 views
4

我希望我的通知顯示在Android Wear設備上所有現有通知堆棧的頂部。我讀過一篇文檔,Google表示我們必須使用方法setPriority()來更改通知狀態中的通知位置。我已經實現通知如下:Android Wear頂部通知

NotificationCompat.Builder builder = new NotificationCompat.Builder(this) 
      .extend(wearableExtender) 
      .setContentTitle(getSpannableTitle(flightDto.getFlightName())) 
      .setContentText(getSpannableContentText(flightDto, color, status)) 
      .setPriority(NotificationCompat.PRIORITY_MAX); 

但是這個代碼不根據需要,如果日曆通知是對所有的頂部,我通知下面顯示日曆通知。 如何在所有通知上顯示此通知?

+0

日曆通知也是最高優先級。系統使用一組元數據來訂購通知。您無法直接控制通知的確切順序。 – pdegand59 2014-11-04 16:46:16

回答

10

要顯示您的通知除了setPriotity除了所有通知之外,您必須添加setVibrate方法。這裏的工作代碼示例:

NotificationCompat.Builder builder = new NotificationCompat.Builder(this) 
      .extend(wearableExtender) 
      .setContentTitle(getSpannableTitle(flightDto.getFlightName())) 
      .setContentText(getSpannableContentText(flightDto, color, status)) 
      .setPriority(priority) 
      .setVibrate(new long[]{1000, 1000, 1000, 1000, 1000}); 
1

您可以使用setOngoing。 API文檔說:「正在進行的通知按照通知面板中的常規通知排序」。

+0

'setOngoing'可以防止通過從左向右滑動來解除通知,並且不會顯示通知。還有一個缺點系統自動添加行動「靜音應用程序」到您的通知。如果您點擊此動作,您的應用將處於「靜音」狀態,要取消靜音應用,您應該在智能手機上使用Android Wear應用中的設置。 – 2014-11-05 15:24:21