Android通知以编程方式启用横幅设置

时间:2017-06-23 01:41:01

标签: android android-notifications

有没有办法以编程方式打开应用程序通知中的横幅设置(显示在状态栏顶部)?

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>

2 个答案:

答案 0 :(得分:1)

同样的问题。 我解决了这个问题,只需在AndroidManifest.xml中添加ACCESS_NOTIFICATION_POLICY权限:

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

不需要更多(至少对我而言)。

答案 1 :(得分:0)

通常,对于需要获得用户权限的设置,您可以在java类中执行此操作。

您可以将用户发送到设置,以便他们可以为您提供所需的权限。但是,听起来你正在寻找单挑通知。如果是这样的话:

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

简单来说,在通知管理器类中设置优先级为高。