这只是我在学Android过程中对于所学知识的巩固和方便日后查询的学习笔记,能帮助到有需要的和我一样的初学者就更好了
可在Activity、BroadcastReceiver、Service中创建
同时要有NotificationManager来管理
NotificationManager manager=(NotificationManager)getSystemSrevice(
Context.NOTIFICATION_SERVICE){
Intent intent=new Intent(MainActivity.this ,SecondActivity.class);
PeddingIntent pi=PendingIntent.getActivity(this ,0 ,intent ,0);
//pi用于触发通知点击,第一个0是由一般用不到;第二个则为pi自身4种动作中常用的
Notifacition notification=new NotificationCompat.Builder(this)
.setContentTitle("this is a notification")
.setContentText("this is content text")
.setWhen(System.currentTimeMillis())
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(getResource() ,R.mipmap.ic_launcher))
.setContentIntent(pi)
.setSound(uri)
.setvibrate(new long[]{0 ,1000 ,1000 ,1000})
//震动,需要android.permission.VIBRATE
.setLights(color.GREEN ,1000 ,1000)
.setAutoCancel(true)
.build();
//全部默认setDefaults(NotificationCompat.DEFAULT_ALL)
}
manager.notify(1 ,notification);
//1为id,自定且唯一
不设置
setAutoCancel(true)
则一直处于上方不消失
也可
manager.cancle(1); //1为多对应Notification的Id
默认文字等只显示几行,若想完整显示可以使用以下方法
长文字
.setstyle(new NotificationCompat.BigTextStyle().bigText(.............));
大图片
.setstyle(new NotificationCompat.BigPictureStyle().bigPicture(
BitmapFactorey.decodeResource(getResource() ,R.drawerbal.big_image)));`
优先级
`.setPriority(...)
有DEFAULT、MIN、LOW、HIGH、MAX可选
网友评论