android 8.0 报错StartForeground Bad Notification Error 解决方法

升级到Android 8.0后遇到startForeground报错问题,原因是需要为通知设置channelid。解决方案是在代码中创建NotificationChannel,并设置相关属性。在通知Builder中添加.setChannelId()方法,确保在Android 8.0及以上版本运行时通知能正常开启。
摘要由CSDN通过智能技术生成

今天升级了android8.0 并且在一个8.0的系统上运行,居然报错了
报错日志就是标题这个了
也就是使用startForeground方法开启通知的时候报错的
在android8.0后 需要给notification设置一个channelid不要问我为什么 解决方法如下


//新增---------------------------------------------
 String CHANNEL_ONE_ID = "com.primedu.cn";
        String CHANNEL_ONE_NAME = "Channel One";
        NotificationChannel notificationChannel = null;
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
            notificationChannel = new NotificationChannel(CHANNEL_ONE_ID,
                    CHANNEL_ONE_NAME, NotificationManager.IMPORTANCE_HIGH);
            notificationChannel.enableLights(true);
            notificationChannel.setLightColor(Color.RED);
            notificationChannel.setShowBadge(true);
            notificationChannel.setLockscreenVisibility(Notification.VISIBILITY_PUBLIC);
            Notificatio

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值