Notification.Builder实现发送一个普通的消息通知

今天学习了android发送一个普通的消息通知

首先,在布局文件声明一个button

<Button
    android:id="@+id/btn_normal_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="80dp"
    android:onClick="Onclick"
    android:text="发送一个普通的通知"/>

当点击button时触发发送消息的事件

@OnClick({R.id.btn_normal_view})
public void Onclick(View v){
    switch (v.getId()){
        case R.id.btn_normal_view:
            Log.d(TAG,"点击了通知按钮");
            Notification.Builder builder=new Notification.Builder(this);
            //设置小图标
            builder.setSmallIcon(R.mipmap.ic_launcher);
            //设置标题
            builder.setContentTitle("你有一条新的消息,请注意查收");
            //设置详情文字
            builder.setContentText("新年好!!!");
 
 
                //打开界面后自动取消通知
                builder.setAutoCancel(true);
                //设置弹出通知后有声音
                builder.setDefaults(Notification.DEFAULT_ALL);
                builder.setNumber(10);
                //设置为常驻通知(一般情况不使用)
               // builder.setOngoing(true);
             //定义一个意图,点击通知时打开一个界面(activity)
                Intent intent=new Intent(NormalView.this,MainActivity. class);

//                PendingIntent.FLAG_CANCEL_CURRENT;//
//                PendingIntent.FLAG_NO_CREATE;
//                PendingIntent.FLAG_ONE_SHOT;
//                PendingIntent.FLAG_UPDATE_CURRENT;
                //参数:1,上下文,2.请求编码3.意图,4.创建pendingintent的方式
                PendingIntent pendingIntent=PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);
                builder.setContentIntent(pendingIntent);
//创建通知对象 Notification n= builder.build();  
  //获取系统的通知管理器,发送通知        
    NotificationManager nm=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);      
      nm.notify(n_tf,n);           
                  break;       
         default:           
                break;   
 }}
 
 
 
 
以上是发送一个普通的通知,如果想发送一个大的通知,那么就要使用
 
 
 Notification.Builder builders=new Notification.Builder(this);
 //设置小图标
 builders.setSmallIcon(R.mipmap.ic_launcher);
 //设置标题
 builders.setContentTitle("你有一条新的消息,请注意查收");
 //设置详情文字
 builders.setContentText("中秋快乐!!!");
Notification.InboxStyle style=new Notification.InboxStyle();
 style.setBigContentTitle("你有一条新的消息,请注意查收");
 style.addLine("会当凌绝顶");
 style.addLine("一览众山小");
 builders.setStyle(style);

 
 

猜你喜欢

转载自blog.csdn.net/xiaoqinyun/article/details/51725674