Android Notification发送通知

本文详细介绍了Android中Notification的使用,包括概述、NotificationChannel的创建、各种类型的发送通知方法如简单通知、大文本通知、可点击通知及其点击事件监听,并提供了完整代码示例。在Android O及以上版本,设置NotificationChannel是必要步骤。同时,文章提到了在Pixel手机上可能出现的小图标显示问题及其原因。

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

一、Notification 概述

Notification,俗称通知,是一种具有全局效果的通知,它展示在屏幕的顶端,首先会表现为一个图标的形式,当用户向下滑动的时候,展示出通知具体的内容。系统为开发者提供了不同种类的通知样式模板可以使用,开发者也可以根据自己需要自定义通知样式。

二、通知渠道(NotificationChannel)

通知渠道是 Google 在 Android O 中新增加的功能,新的版本中把振动、音效和灯效等相关效果放在了通知渠道中控制,这样用户就可以有选择的控制应用的某一类通知的通知效果,而不像之前版本中应用所有通知都受控于一种设置。需要注意的是,在 Android O 版本中,发送通知的时候必须要为通知设置通知渠道,否则通知不会被发送

public void addNotificationChannel() {
   
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
   
        //创建通知渠道
        CharSequence name = "渠道名称1";
        String description = "渠道描述1";
        int importance = NotificationManager.IMPORTANCE_DEFAULT;//重要性级别 这里用默认的
        NotificationChannel mChannel = new NotificationChannel(channelId, name, importance);

        mChannel.setDescription(description);//渠道描述
        mChannel.enableLights(true);//是否显示通知指示灯
        mChannel.enableVibration(true);//是否振动

        mNotificationManager.createNotificationChannel(mChannel);//创建通知渠道
    }
}

三、发送通知

1、简单通知

效果图如下所示:


具体代码如下:

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, channelId)
        .setSmallIcon(R.mipmap.ic_launcher)//小图标
        .setContentTitle("我是标题")
        .setContentText("我是内容内容");

mNotificationManager.notify(id, mBuilder.build());
2、大文本通知

效果图如下所示:


具体代码如下:

NotificationCompat.Builder mBuilder2 = new NotificationCompat.Builder(this, channelId)
        .setSmallIcon(R.mipmap.ic_launcher)//小图标
        .setStyle(new NotificationCompat.BigTextStyle().bigText("通知渠道是 Google 在 Android O 中新增加的功能," +
                "新的版本中把振动、音效和灯效等相关效果放在了通知渠道中控制," +
                "这样用户就可以有选择的控制应用的某一类通知的通知效果," +
                "而不像之前版本中应用所有通知都受控于一种设置。需要注意的是," +
                "在 Android O 版本中,发送通知的时候必须要为通知设置通知渠道,否则通知不会被发送"))
        .setContentTitle("我是标题");

mNotificationManager.notify(id, mBuilder2.build());
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值