Android 8.0通知栏推送及适配

上一篇我们确保了我们开启了通知栏的权限,那么接下来就是发送推送了,废话不多说,上代码。

首先我们判断手机版本号,Android版本大于8.0的时候呢,我们需要进行一下通道的操作才可:判断版本号代码接好

//此处判断安卓版本号是否大于或者等于Android8.0
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    String channelId = "chat";//设置通道的唯一ID
    String channelName = "聊天消息";//设置通道名
    int importance = NotificationManager.IMPORTANCE_HIGH;//设置通道优先级
    createNotificationChannel(channelId, channelName, importance,title,text);
} else {
    sendSubscribeMsg(title,text);
}

Android8.0+适配

    @TargetApi(Build.VERSION_CODES.O)
    private void createNotificationChannel(String channelId, String channelName, int importance,String title,String text) {
        NotificationChannel channel = new NotificationChannel(channelId, channelName, importance);
        NotificationManager notificationManager = (NotificationManager) AppApplication.getContext().getSystemService(NOTIFICATION_SERVICE);
        notificationManager.createNotificationChannel(channel);
        sendSubscribeMsg(title,text);
    }

通知栏推送代码

public void sendSubscribeMsg(String title,String text) {
    NotificationManager manager = (NotificationManager) AppApplication.getContext().getSystemService(NOTIFICATION_SERVICE);
    Notification notification = new NotificationCompat.Builder(AppApplication.getContext(), "chat")
            .setContentTitle(title)
            .setContentText(text)
            .setWhen(System.currentTimeMillis())
            .setSmallIcon(R.mipmap.logo)
            .setLargeIcon(BitmapFactory.decodeResource(AppApplication.getContext().getResources(), R.mipmap.logo))
            .setAutoCancel(true)
            .build();
        manager.notify(2, notification);
    }

我们还可以给notification设置其他属性,例如:

setCustomContentView(createContentView())  用于设置自定义的View
notification.flags |= Notification.FLAG_NO_CLEAR; 设置flags 使其无法被滑动删除
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值