Android发送通知——通知栏(Notification)

Android发送通知——通知栏(Notification)

通知是指 Android 在您应用的界面之外显示的消息,旨在向用户提供提醒、来自他人的通信信息或您应用中的其他实时信息。在发出一条通知后,手机最上方的状态栏会显示一个通知的图标,下拉状态栏后就可以看到通知的详细内容。用户可以点按通知来打开应用,或直接从通知中执行操作。
在这里插入图片描述

通知格式

在这里插入图片描述

  • 小图标:必须提供,通过 setSmallIcon() 进行设置。
  • 应用名称:由系统提供。
  • 时间戳:由系统提供,但您可以使用 setWhen() 替换它或者使用 setShowWhen(false) 隐藏它。
  • 大图标:可选内容(通常仅用于联系人照片,请勿将其用于应用图标),通过 setLargeIcon() 进行设置。
  • 标题:可选内容,通过 setContentTitle() 进行设置。
  • 文本:可选内容,通过 setContentText() 进行设置。

创建通知

  • 创建一个通知(必须设置channelId)
    使用Builder构造器来创建Notification对象
Context context=getApplicationContext();
String channelId = "测试渠道";
Notification notification = new Notification.Builder(context,channelId)
	.setContentTitle("测试通知标题")
	.setContentText("测试通知文本")
	.setWhen(System.currentTimeMillis())
	.setSmallIcon(R.drawable.icon)
	.setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.welcome1))   //设置大图标
	.build();

Notificationt.Builder常用设置:

设置属性说明
setAutoCancel(boolean autocancel)设置点击信息后自动清除通知
setContent(RemoteView view)设置自定义通知
setContentTitle(String string)设置标题
setContentText(String string)设置内容
SetContentIntent(PendingIntent intent)设置点击信息后的跳转(意图)
setWhen(long when)设置时间
setSmallIcon()设置小图标
setLargeIcon()设置大图标
setPriority(int pri)设置通知的重要程度
setStyle(Style style)设置样式
setVisibility(int visibility)设置锁屏显示
setDefault(int defaults)设置默认
  • 获取系统的通知管理器
NotificationManager notificationManager = (NotificationManager)context.getSystemService(NOTIFICATION_SERVICE);
  • 创建NotificationChannel(这里传入的channelId要和创建的通知channelId一致,才能为指定通知建立通知渠道)
NotificationChannel channel = new NotificationChannel(channelId,"测试渠道名称", NotificationManager.IMPORTANCE_DEFAULT);
notificationManager.createNotificationChannel(channel);

通知渠道是指每条通知都要属于一个对应的渠道,每个APP可以自由地创建当前APP拥有哪些通知渠道,但是这些通知渠道的控制权都是掌握在用户手上的。用户可以自由地选择这些通知渠道的重要程度、是否响铃、是否震动或者是否关闭这个渠道的通知。
通知渠道的使用:Android O(8.0)Notification Channel使用姿势NotificationChannel使用手册

  • 发送通知
notificationManager.notify(1123, notification);

在这里插入图片描述

通知样式

Android为开发者提供了不同种类的通知样式模板可以使用,开发者也可以根据自己需要自定义通知样式。
本来是打算自己看手册总结一下的,有个大神总结得很到位:Android 8.0中各种通知写法汇总
以大图样式为例:

// 1. 创建一个通知(必须设置channelId)
Notification.BigPictureStyle bigPictureStyle = new Notification.BigPictureStyle()
        .setBigContentTitle("Big picture style notification ~ Expand title")
        .setSummaryText("Demo for big picture style notification ! ~ Expand summery")
        .bigPicture(BitmapFactory.decodeResource(context.getResources(),R.drawable.welcome3));
Notification notification = new Notification.Builder(context,channelId)
        .setContentTitle("测试通知标题")
        .setContentText("测试通知文本")
        .setWhen(System.currentTimeMillis())
        .setSmallIcon(R.drawable.icon)
        .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.welcome1))   //设置大图标
        .setStyle(bigPictureStyle)
        .build();
// 2. 获取系统的通知管理器
NotificationManager notificationManager = (NotificationManager)context.getSystemService(NOTIFICATION_SERVICE);
// 3. 创建NotificationChannel(这里传入的channelId要和创建的通知channelId一致,才能为指定通知建立通知渠道)
NotificationChannel channel = new NotificationChannel(channelId,"测试渠道名称", NotificationManager.IMPORTANCE_DEFAULT);
notificationManager.createNotificationChannel(channel);
// 4. 发送通知
notificationManager.notify(1123, notification);

展开前:
在这里插入图片描述
展开后:
在这里插入图片描述

  • 11
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
### 回答1: Android通知是一种用于显示应用程序通知的用户界面元素。它可以在屏幕的顶部或底部显示,并且可以包含文本、图像、声音和其他交互元素。通知可以帮助用户及时了解应用程序的状态和事件,例如新消息、更新、提醒和警告等。开发人员可以使用Android SDK提供的通知API来创建和管理通知,以便更好地与用户进行交互。 ### 回答2: Android 通知是一种提供给用户显示有关当前状态和行动的信息的方式,以便用户可以及时地采取必要的行动。通知可以显示来自应用程序和系统的通知消息,例如电子邮件、信息和其他事件,可以让用户在不离开当前应用的情况下对这些消息进行响应。 在通知中,每个通知都包含一个图标、标题、简短的消息文本和通知时间。用户可以从通知中直接打开应用程序或查看通知的详细信息。通知还可以显示多个通知,按照时间顺序进行排序。 开发人员可以使用 Android SDK 提供的 Notification 类来创建自定义通知。可以设置通知的图标、文本、声音、震动和延迟时间等属性。还可以指定通知的优先级,以便系统在有限的屏幕空间中为用户先显示最重要的通知通知还可以与 PendingIntent 实例相关联,以便在用户单击通知时执行特定的操作,例如打开应用程序,启动活动或显示通知详细信息的专用活动。 总之,Android 通知是一种非常有用的功能,可以让用户及时了解应用程序和系统中的重要事件,并采取及时的行动。开发人员可以使用通知来实现更好的用户体验。 ### 回答3: Android 通知是一种非常有用的功能,它可以让你的应用程序以一种全新的方式与用户进行交互。在 Android 应用程序中,通知是一种特殊的 UI 元素,它显示在屏幕的顶部,并显示当前状态、事件或提示。通知通常包含一组小图标,可以展开或折叠以显示更多详细信息。 Android 通知有许多不同的用途,例如提醒用户新的消息、电子邮件、电话、提醒等等。发送通知的应用程序无需与用户保持连接,这使得通知非常适合后台服务或其他形式的低功耗通信。通知还允许用户直接从通知菜单中操作应用程序。例如,当用户收到新的电子邮件时,他们可以在通知中选择该电子邮件并立即查看其内容,而无需打开电子邮件应用程序。 Android 通知的另一个优点是它的可定制性。可以轻松地修改通知的外观、行为和内容,以满足不同应用程序的需求和设计要求。您可以为通知添加各种元素,如纯文本、小图标、大图标、进度指示器、按钮等等。这样,您可以轻松地创造与您的品牌和应用程序设计语言保持一致的通知。 在实现通知之前,您需要确保该应用程序已获得了通知权限。如果您的应用程序需要通知用户任何内容,则必须获得 Android 手机上的通知权限。可以在应用程序设置中找到此选项。 虽然 Android 通知很有用,但在某些情况下,它们可能会变得令人分心。因此,应该仔细考虑应用程序通知的数量和类型,以确保用户不会感到困扰。通知还可以消耗设备电池,因此也应考虑优化应用程序以最小化资源消耗。 Android 通知作为 Android 应用程序非常重要的一部分,可以帮助您在应用程序和用户之间建立更紧密的联系,并提供有关应用程序状态、事件和提示的有用信息。通过努力优化您的应用程序通知,您可以确保用户感到受到了关注,并且同时不会让他们感到困扰。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

起风*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值