版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/system_err/article/details/79799550
消息通知栏的实现
- 我们要通过builder工厂来创建一个notification的对象
- 我们创建一个点击了通知栏消息要跳转到的activityIntent intent = new Intent(context, PlayActivity.class);
- 通过builder对象来设置notification相关的属性值
4.我们要获得notification的管理器通过context.getSystemService(context.NOTIFICATION_SERVICE);得到,由其调用notify进行通知
public static void showNotifictionIcon(Context context) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
Intent intent = new Intent(context, PlayActivity.class);//将要跳转的界面
builder.setAutoCancel(true);//点击后消失
builder.setSmallIcon(R.drawable.icon_music);//设置通知栏消息标题的头像
builder.setDefaults(NotificationCompat.DEFAULT_SOUND);//设置通知铃声
builder.setTicker("你好");
builder.setContentText("今天天气真好");//通知内容
builder.setContentTitle("天气");
//利用PendingIntent来包装我们的intent对象,使其延迟跳转
PendingIntent intentPend = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
builder.setContentIntent(intentPend);
NotificationManager manager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);
manager.notify(0, builder.build());
}
另外:
- private void showNotification() {
- // TODO Auto-generated method stub
- Notification.Builder builder=new Builder(this);
- builder.setSmallIcon(R.drawable.ic_launcher);//设置图标
- builder.setTicker("通知来啦");//手机状态栏的提示
- builder.setContentTitle("我是通知标题");//设置标题
- builder.setContentText("我是通知内容");//设置通知内容
- builder.setWhen(System.currentTimeMillis());//设置通知时间
- Intent intent=new Intent(this,MainActivity.class);
- PendingIntent pendingIntent=PendingIntent.getActivity(this, 0, intent, 0);
- builder.setContentIntent(pendingIntent);//点击后的意图
- builder.setDefaults(Notification.DEFAULT_LIGHTS);//设置指示灯
- builder.setDefaults(Notification.DEFAULT_SOUND);//设置提示声音
- builder.setDefaults(Notification.DEFAULT_VIBRATE);//设置震动
- Notification notification=builder.build();//4.1以上,以下要用getNotification()
- manager.notify(Notification_ID, notification);
- }
- <uses-permission android:name="android.permission.VIBRATE" />
- <uses-permission android:name="android.permission.FLASHLIGHT" />