Android通知

一,状态栏显示通知

public void notice(){

    //设置在通知栏时点击打开该页面

    Intent intent = new Intent(this, NotificationActivity.class);

    PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);

    //通过Context的getSystemService()方法获取NotificationManager对象来对通知进行管理

    NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

    Notification notification = new NotificationCompat.Builder(this,"default")
        .setContentTitle("设置通知的标题")
        .setContentText("设置通知的内容")
        .setWhen(System.currentTimeMillis())     //设置通知被创建的时间
        .setSmallIcon(R.drawable.ic_launcher_background)      //设置通知的小图标
        .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher))      //设置通知的大图标

        .setContentIntent(pi)        //用户点击调用setContentIntent方法

        .setAutoCancel(true)       //用户点击后通知消失在状态栏

        .setSound(Uri.fromFile(new File("本地音频文件")))         //通知发出时播放该音频

        .setVibrate(new long[]{0,1000,1000,1000})      //下标为偶数表示静止的时长,下标为奇数表示手机振动的时长,当前表示通知来时,振动1秒,静止1秒,在振动1秒

        .setLights(Color.GREEN, 1000, 1000)       //LED灯闪烁,在锁屏时调用,第一个参数显示的颜色,第二个参数LED灯亮起的时长,第三个参数LED暗去的时长。

         .setDefaults(NotificationCompat.DEFAULT_ALL)         //设置默认效果

       .build();

     manager.notify(1,notification);        //显示这个通知

}

//振动需要添加权限,手机振动权限

           

//通知其它用法

//加载一张图片

         .style(new NotificationCompat.BigPictureStyle()

.bigPiceture(BitmapFactory.decodeResource(getResources(),R.drawable.big_image)))

//显示长文本

.style(new NotificationCompat.BigTextStyle().bigText("长文本内容")))

//设置通知的重要度

.setPriority(NotificationCompat.PRIORITY_MAX)   //PRIORITY_MAX表示最高的重要度


 

 

 

 

你可能感兴趣的:(Android)