您的位置:首页 > 移动开发 > Android开发

android Notification 点击与移除监听

2015-11-02 09:57 363 查看
private void showNotification() {

NotificationManager mNotificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);
mBuilder.setContentTitle("测试标题")// 设置通知栏标题
.setContentText("测试内容")// 设置通知栏显示内容
.setContentIntent(getDefalutIntent(Notification.FLAG_AUTO_CANCEL))// 设置通知栏点击意图
// .setNumber(number);
.setTicker("测试通知来啦")// 通知栏首次出现在通知栏,带上动画效果
.setWhen(System.currentTimeMillis())// 通知栏时间,一般是直接用系统的
.setPriority(Notification.DEFAULT_ALL)// 设置通知栏优先级
.setAutoCancel(true)// 用户单击面板后消失
.setOngoing(false)// true,设置他为一个正在进行的通知。他们通常是用来表示一个后台任务,用户积极参与(如播放音乐)或以某种方式正在等待,因此
// 占用设备(如一个文件下载,同步操作,主动网络连接)
.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE)// 向通知添加声音、闪灯和振动效果的最简单、最一致的方式是使用当前的用户默认设置,
// 使用default属性,可以组合
// Notification.DEFAULT_ALL Notification.DEFAULT_SOUND 添加声音 //
// requires VIBRATE permission
.setSmallIcon(R.drawable.ic_launcher);
Notification notification = mBuilder.build();
notification.flags = Notification.FLAG_ONGOING_EVENT;
notification.flags = Notification.FLAG_NO_CLEAR;// 点击清除的时候不清除
//		Intent realIntent = new Intent(getApplicationContext(), MainActivity.class);
//		realIntent.addCategory(Intent.CATEGORY_LAUNCHER);
//		realIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
Intent clickIntent = new Intent("action_click",null,getApplicationContext(), NotificationReceiver.class);
//		clickIntent.setAction("action_click");
Intent dismissIntent = new Intent("action_dismiss", null, getApplicationContext(), NotificationReceiver.class);
//		intent.putExtra("realIntent", realIntent);
//		PendingIntent pendingIntent = PendingIntent.getActivity(getApplicationContext(), 0, intent,
//				0);
PendingIntent clickPendingIntent = PendingIntent.getBroadcast(this, 0, clickIntent,
0);
PendingIntent dismissPendingIntent = PendingIntent.getBroadcast(this, 0, dismissIntent,
0);
mBuilder.setContentIntent(clickPendingIntent);
mBuilder.setDeleteIntent(dismissPendingIntent);
mNotificationManager.notify(0, mBuilder.build());
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: