Android开发之如何使用通知提醒功能(Notifications)

2024-06-06 04:18

本文主要是介绍Android开发之如何使用通知提醒功能(Notifications),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在某些情况下,可能需要你去通知用户发生在你应用中的事件,其中一些事件需要用户响应,有的则不需要。例如:

:* 当一个事件完成时(比如保存一个文件),则需要显示一个简短的消息来确认保存成功。

:* 假如应用正在后台运行且需要用户注意,那么该应用需要创建一个通知以方便用户做出响应。

:* 假如应用正在执行某个动作(比如正在载入一个文件)且需要用户等待,那么该应用需要显示一个旋转的进度条来表示这个过程。

以上这些通知任务,每一个都可以用不同的技术来实现:

:* Notifications#Toast_.E9.80.9A.E7.9F.A5|Toast通知,是从后台启用一个简短的消息;

:* Notifications#.E7.8A.B6.E6.80.81.E6.A0.8F.E9.80.9A.E7.9F.A5|状态栏通知,是来自后台的持续提醒且需要用户响应;

:* Notifications#.E5.AF.B9.E8.AF.9D.E6.A1.86.E9.80.9A.E7.9F.A5|对话框通知,是一种与Activity(活动)相关的通知。

这份文档包括了这些通知用户的相关技术的介绍以及完整文档的链接。

* Toast 通知*

{|style="border-spacing: 0px;margin: 4px 4px; width: 70%; "
|- style=" vertical-align:top;"
| style=" width:auto;" |

Toast通知是一种浮现在屏幕上层的消息提醒,它只填充消息所需要的空间,而当前正在运行的活动仍然保持其自身的可见性和交互性。这种通知自动淡入淡出且不接受交互事件,因为它是由后台服务创建的,所以即时应用不可见了它仍然能够显示。

当你完全将注意力集中在屏幕上时,那么Toast通知是最好的提示简短消息的方式(例如文件保存成功提醒)。这种通知不接受用户的交互事件,但假如你想让用户去响应和做出动作,你可以考虑使用Notifications#.E7.8A.B6.E6.80.81.E6.A0.8F.E9.80.9A.E7.9F.A5|状态栏通知来代替。

详细信息,请参阅Toast_Notifications|Toast通知。

| style=" width:250px;text-align:center; " |
http://developer.android.com/images/toast.png

|}

* 状态栏通知*

{|style="border-spacing: 0px;margin: 4px 4px; width: 70%; "
|- style=" vertical-align:top;"
| style=" width:auto;" |

状态栏通知是将图标添加到系统的状态栏(带有一个可选的滚动文本消息),同时将扩展信息添加到“通知”窗口。当用户选择这个扩展信息时,安卓设备将触发一个由通知定义的Intent(通常是载入一个活动)。你还可以为这个通知配置声音、震动以及闪光灯来提醒用户。

这种模式的通知是在当你的应用运行在后台服务中且需要用户注意到这个事件时使用的。假如你需要提醒用户正在发生的事件,且这个事件正持续进行时,你可以考虑使用Notifications#.E5.AF.B9.E8.AF.9D.E6.A1.86.E9.80.9A.E7.9F.A5|对话框通知来代替。

详细信息,请参阅Status_Bar_Notifications|状态栏通知。

| style=" width:250px;text-align:center; " |
http://developer.android.com/images/notifications_window.png

|}

* 对话框通知*

{|style="border-spacing: 0px;margin: 4px 4px; width: 70%; "
|- style=" vertical-align:top;"
| style=" width:auto;" |

对话框通常是一种显示在当前活动之上的小窗口,这时候下层的活动将失去焦点,且对话框可以接受任何形式的用户交互方式。一般来说对话框是用于通知或者用于直接关系到应用进程的短期活动。

当你需要显示一个进度条或者一个需要用户确认的短消息(例如带有“确定”和“取消”按钮的提醒)时,你可以利用对话框来实现。你还可以把它当作应用的用户界面和除了通知以外其他目的的交互元件。所有可用类型的对话框(包括用于通知)的完整讨论,请参阅Dialogs|对话框。

| style=" width:250px;text-align:center; " |
http://developer.android.com/images/dialog_progress_spinning.png

|- style=" vertical-align:top; "
| style=" width:auto; text-align:right;" |
Notifications#top|↑返回顶部

| style=" width:250px;align:right; " |

|- style=" vertical-align:top; "
| style=" width:auto; text-align:left;" |
User_Interface|←返回用户接口

| style=" width:250px;align:right; " |
|}

这篇关于Android开发之如何使用通知提醒功能(Notifications)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1035068

相关文章

mybatis-plus QueryWrapper中or,and的使用及说明

《mybatis-plusQueryWrapper中or,and的使用及说明》使用MyBatisPlusQueryWrapper时,因同时添加角色权限固定条件和多字段模糊查询导致数据异常展示,排查发... 目录QueryWrapper中or,and使用列表中还要同时模糊查询多个字段经过排查这就导致只要whe

Python使用openpyxl读取Excel的操作详解

《Python使用openpyxl读取Excel的操作详解》本文介绍了使用Python的openpyxl库进行Excel文件的创建、读写、数据操作、工作簿与工作表管理,包括创建工作簿、加载工作簿、操作... 目录1 概述1.1 图示1.2 安装第三方库2 工作簿 workbook2.1 创建:Workboo

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张

使用Go实现文件复制的完整流程

《使用Go实现文件复制的完整流程》本案例将实现一个实用的文件操作工具:将一个文件的内容完整复制到另一个文件中,这是文件处理中的常见任务,比如配置文件备份、日志迁移、用户上传文件转存等,文中通过代码示例... 目录案例说明涉及China编程知识点示例代码代码解析示例运行练习扩展小结案例说明我们将通过标准库 os

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

如何使用Lombok进行spring 注入

《如何使用Lombok进行spring注入》本文介绍如何用Lombok简化Spring注入,推荐优先使用setter注入,通过注解自动生成getter/setter及构造器,减少冗余代码,提升开发效... Lombok为了开发环境简化代码,好处不用多说。spring 注入方式为2种,构造器注入和setter

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

MySQL中比较运算符的具体使用

《MySQL中比较运算符的具体使用》本文介绍了SQL中常用的符号类型和非符号类型运算符,符号类型运算符包括等于(=)、安全等于(=)、不等于(/!=)、大小比较(,=,,=)等,感兴趣的可以了解一下... 目录符号类型运算符1. 等于运算符=2. 安全等于运算符<=>3. 不等于运算符<>或!=4. 小于运

使用zip4j实现Java中的ZIP文件加密压缩的操作方法

《使用zip4j实现Java中的ZIP文件加密压缩的操作方法》本文介绍如何通过Maven集成zip4j1.3.2库创建带密码保护的ZIP文件,涵盖依赖配置、代码示例及加密原理,确保数据安全性,感兴趣的... 目录1. zip4j库介绍和版本1.1 zip4j库概述1.2 zip4j的版本演变1.3 zip4