我需要在通知栏上弹出一个通知提示类似于QQ那种,但是在其他手机上都可以弹,今天在OPPO R9m试了下通知列表是有信息,但是没有弹出的提示。 哪位知道是什么问题导致的吗?
//代码
public static void sendNotification(String title, String content, Context context, Class activity) { NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context); Intent intent = new Intent(context, activity); PendingIntent pendingIntent = PendingIntent .getActivity(context, pendingId, intent, PendingIntent.FLAG_UPDATE_CURRENT); mBuilder.setContentIntent(pendingIntent);// 设置通知栏点击意图 mBuilder.setContentTitle(title);// 设置通知栏标题 mBuilder.setContentText(content); mBuilder.setSmallIcon(R.drawable.icon_laucher);// 设置通知小ICON(5.0必须采用白色透明图片) //mBuilder.setTicker(content + "有警报!"); // 通知首次出现在通知栏,带上升动画效果的 if (Build.VERSION.SDK_INT >= //悬挂式Notification,5.0后显示 Build.VERSION_CODES.LOLLIPOP) { mBuilder.setFullScreenIntent(pendingIntent, true); mBuilder.setCategory(NotificationCompat.CATEGORY_MESSAGE); mBuilder.setVisibility(Notification.VISIBILITY_PUBLIC); } mBuilder.setLargeIcon(BitmapFactory.decodeResource(context .getResources(), R.drawable.icon_laucher));// 设置通知大ICON mBuilder.setWhen(System .currentTimeMillis());// 通知产生的时间,会在通知信息里显示,一般是系统获取到的时间 mBuilder.setPriority(NotificationCompat.PRIORITY_MAX); // 设置该通知优先级 mBuilder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC);//在任何情况下都显示,不受锁屏影响。 mBuilder.setAutoCancel(true);// 设置这个标志当用户单击面板就可以让通知将自动取消 mBuilder.setOngoing(false);// ture,设置他为一个正在进行的通知。他们通常是用来表示一个后台任务,用户积极参与(如播放音乐)或以某种方式正在等待,因此占用设备(如一个文件下载,同步操作,主动网络连接) // 向通知添加声音、闪灯和振动效果的最简单、最一致的方式是使用当前的用户默认设置,使用NotificationCompat.DEFAULT_ALL属性,可以组合 //mBuilder.setVibrate(new long[] { 0, 100, 500, 100 });//振动效果需要振动权限 //Uri defaultSoundUrlUri = RingtoneManager // .getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); //声音 // //mBuilder.setSound(defaultSoundUrlUri); mBuilder.setDefaults(NotificationCompat.DEFAULT_LIGHTS);//闪灯 NotificationManager mNotificationManager = (NotificationManager) context .getSystemService(Activity.NOTIFICATION_SERVICE); //Notification notification = mBuilder.getNotification();//API 11 Notification notification = mBuilder.build();//API 16 mNotificationManager.notify(1, notification); }
默认是关闭APP通知权限的。
查一下是不是被禁止弹出通知栏了