Android开发安卓10不显示通知栏Notification不显示NotificationManager.notify无效通知栏不显示

本文详述了在Android 8.0及以上版本中如何深度定制通知栏,包括设置标题、内容、图标、灯光、铃声、震动等属性,并特别介绍了channelId的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 Android8.0以上得加channelId

Intent intent = new Intent(SplashActivity.this,ChatActivity.class);
                PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, 0);
                Notification notification;
                Notification.Builder builder;
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                    builder=new Notification.Builder(this,"5996773");
                }else {
                    builder=new Notification.Builder(this);
                }
                //设置标题
                builder.setContentTitle("设置标题");
                //设置内容
                builder.setContentText("内容是............");
                //设置状态栏显示的图标,建议图标颜色透明
                builder.setSmallIcon(R.mipmap.ic_launcher);
                // 设置通知灯光(LIGHTS)、铃声(SOUND)、震动(VIBRATE)、(ALL 表示都设置)
                builder.setDefaults(Notification.DEFAULT_ALL);
                //灯光三个参数,颜色(argb)、亮时间(毫秒)、暗时间(毫秒),灯光与设备有关
                builder.setLights(Color.RED, 200, 200);
                // 铃声,传入铃声的 Uri(可以本地或网上)我这没有铃声就不传了
                builder.setSound(Uri.parse("")) ;
                // 震动,传入一个 long 型数组,表示 停、震、停、震 ... (毫秒)
                builder.setVibrate(new long[]{0, 200, 200, 200, 200, 200});
                // 通知栏点击后自动消失
                builder.setAutoCancel(true);
                // 简单通知栏设置 Intent
                builder.setContentIntent(pendingIntent);
                builder.setPriority(Notification.PRIORITY_HIGH);

                //设置下拉之后显示的图片
                builder.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.icon));
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                    NotificationChannel channel = new NotificationChannel("5996773", "安卓10a", NotificationManager.IMPORTANCE_DEFAULT);
                    channel.enableLights(true);//是否在桌面icon右上角展示小红点
                    channel.setLightColor(Color.GREEN);//小红点颜色
                    channel.setShowBadge(false); //是否在久按桌面图标时显示此渠道的通知
                    mNManager.createNotificationChannel(channel);
                }
                notification=builder.build();
                mNManager.notify(1,notification);

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值