2017-06-23 263 views
2

是否有任何方式通過編程方式在應用程序通知中打開橫幅設置(在狀態欄頂部顯示)?Android通知以編程方式打開橫幅設置

enter image description here

<pre><code> 
// send notification to NotificationManager 
Notification.Builder notificationBuilder =new Notification.Builder(context); 
notificationBuilder.setSmallIcon(R.drawable.icon_32x32) 
.setLargeIcon(bitmap) 
.setContentTitle("title") 
.setContentText("content") 
.setContentIntent(contentIntent) 
.setAutoCancel(true) 
.setDefaults(Notification.DEFAULT_ALL)   
.setPriority(Notification.PRIORITY_HIGH) 
.setCategory(Notification.CATEGORY_MESSAGE); 

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){        
notificationBuilder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC); 
} 

NotificationManager notificationManager = 
(NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE); 
notificationManager.notify(id, notificationBuilder.build()); 
</code></pre> 

回答

0

通常用於設置你需要得到用戶的許可,您可以在您的Java類做到這一點。

您可以將用戶發送到設置,以便他們可以授予您所需的權限。不過,聽起來你正在尋找單挑通知。如果是這樣的話:

https://developer.android.com/guide/topics/ui/notifiers/notifications.html#Heads-up

在簡單的話,在你通知管理類設置的高優先級。

+0

通知管理員已經設置了高優先級。擡頭通知只會在我的應用通知打開橫幅時顯示。 所以我想知道是否有任何方法來打開橫幅設置。 – cwai

+0

然後請上傳您的通知管理員代碼。另外,它正在提醒你正在尋找什麼? – dfabiano

+0

擡頭通知僅在我的應用程序通知打開橫幅設置時顯示,這是設置在我的應用程序通知設置中的設置。 這是特殊設備的設置嗎? – cwai

1

同樣的問題。 我解決了這個問題,簡單地增加在AndroidManifest.xml中ACCESS_NOTIFICATION_POLICY權限:

<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" /> 

沒有更多的要求(至少對我來說)。

+0

如果上面的權限已添加,那麼它會保證舉手通知來自Activity。如果用戶更改了通知設置會怎麼樣。我們如何知道設置的變化。 –

相關問題