Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API

想要看全部设置的请看这一篇 【转】NotificationCopat.Builder全部设置

常用设置:

 

设置属性

 

说明

 

setAutoCancel(boolean autocancel)

 

设置点击信息后自动清除通知

 

setContent(RemoteView view)

 

设置自定义通知

 

setContentTitle(String string)

 

设置标题

 

setContentText(String string)

 

设置内容

 

SetContentIntent(PendingIntent intent)

 

设置点击信息后的跳转(意图)

 

setWhen(long when)

 

设置时间

 

setPriority(int pri)

 

设置通知的重要程度

 

setStyle(Style style)

 

设置样式

 

setVisibility(int visibility)

 

设置锁屏显示

 

setDefault(int defaults)

 

设置默认

 

setLight(int argb, int onMs, int offMs)

 

设置呼吸灯闪烁效果

 

setSound(Uri sound)

 

设置通知音效

 

setVibrate(long [] pattern)

 

设置震动效果

 

setCategory(String category)

 

设置通知类别

 

setColor(int argb)

 

设置通知栏颜色

 

setFullScreenIntent(PendingIntent intent,boolean b)

 

设置弹窗显示

 
简单步骤说明:

创建一个notification,需要NotificationManager(这是一个系统的服务类,由名字很容易知道是用来管理Notification通知类的)和Notification(通知类)

Notification创建类似Dialog的创建,通过Notification类中提供的各种方法来设置属性,最后build方法生成

NotificationManger的实例可以通过getSystemService这个方法获得

PendingIntent与Intent有关系,这是一个延迟意图,可以通过调用getActivity,getBroadcastReceiver,getService三个方法获得实例

 

普通使用:


NotificationCompat.Builder自动设置的默认值:

    priority: PRIORITY_DEFAULT //通知的重要程度
    when: System.currentTimeMillis() //时间
    audio stream: STREAM_DEFAULT //音效 系统默认音效

上面的这三个我们一般情况下可以不用设置,系统会自动帮我们设置

下面就是一个简单的使用,设置了标题,内容,小图标,点击通知栏的该信息会跳转到main2Activity中,具体可以看注释,之后由这个普通使用的通知作为基础讲解NotificationCopat.Builder中的其他设置


Intent intent = new Intent(this,Main2Activity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,0);
NotificationManager manger = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
Notification notification = new NotificationCompat.Builder(this)
.setContentTitle("this is cotenttitle")//设置标题,必要
.setContentText("contentText")//设置内容,必要
.setWhen(System.currentTimeMillis())//设置时间,默认设置,可以忽略
.setSmallIcon(R.mipmap.ic_launcher)//设置通知栏的小图标,必须设置
.setAutoCancel(true)//设置自动删除,点击通知栏信息之后系统会自动将状态栏的通知删除,要与setContentIntent连用
.setContentIntent(pendingIntent)//设置在通知栏中点击该信息之后的跳转,参数是一个pendingIntent
     
.build();
     manger.notify(1,notification);//id为1

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpfdwd.html