Android 用户界面---通知(Notifications)概要

翻译 2012年03月23日 16:31:31

有几种类型的场景可能会要求你把应用程序中发生的事件通知给用户。有些事件需要用户响应,而有些则不需要。例如:

1. 当像文件保存完成的一个事件发生时,就应该显示一个短消息,提示用户保存成功了。

2. 如果应用程序正在后台运行,并且需要用户的关注,那么应用程序就应该创建一个允许用户方便响应的通知。

3. 如果应用程序正在执行用户必须等待的工作(如装载文件),那么应用程序就应该显示一个悬停的进度对话框。

每种通知任务都能够使用以下三种不同的技术来实现:

1. 广播通知,主要针对来自后台的短消息;

2. 状态栏通知,主要针对来自后台的并要求用户响应的持续性提醒;

3. 对话框通知,主要针对Activity相关的通知。

广播通知(Toast Notification

广播通知是弹出到窗口表明的一个消息(如图1所示)。它仅填充了消息要求的空间大小,并且依然保留当前Activity的可先性和交互性。这种类型的通知自动的渐入渐出,而且不接受交互事件。因为广播通知是由后台服务创建的,即使应用程序不可见,它也会显示。

1

广播通知最好用短文本消息,如“文件保存成功”。广播通知不能接收用户交互事件,如果希望能够的到用户的响应,可以考虑私用状态栏通知来替代。

状态栏通知(Status Bar Notification

状态栏通知会把一个图标(带有一个可选的提示文本消息)添加到系统的状态栏(如图2所示),并把一个展开的消息添加到通知窗口中。当用户选择这个展开的消息时,Andriod会触发一个由通知定义的Intent对象(通常是要启动一个Activity)。你也能够在设备上给通知配置一个声音、震动、屏幕闪亮等效果以提醒用户。

2

当用户的应用程序正在一个后台服务中工作,并且需要把一个内部事件通知给用户时,这种类型的通知是非常合适的。如果你需要把发生的事件通知给用户的同时,Activity不能保留焦点,可以考虑使用对话框通知来代替。

对话框通知(Dialog Notification

对话框通常是显示在当前Activity前面的一个小窗口。它下面的Activity会失去焦点,并且对话框会接受所有的用户交互。对话框通常直接用于与应用程序内进度相关的通知和短期活动。

当你需要显示一个进度条或需要用户确认的短消息时,应该使用对话框(如带有“OK”和“Cancel”按钮的提示框)。你也能够把对话框作为集成应用程序组件的UI界面来使用。

html5桌面通知(Web Notifications)实例解析

通过Web Notifications(桌面通知系统),网站可以在用户桌面弹出一条通知,无论用户是否浏览当前网页,甚至最小化了浏览器,通知均可到达用户桌面。 一、Notification API ...
  • caichang8
  • caichang8
  • 2015年11月12日 11:24
  • 1249

Android高仿UC浏览器和360手机卫士消息常驻栏(通知栏)

之前网上看了下自定义消息栏,通知栏,了解到了Notification这个控件,发现UC浏览器等都是这种类型,今天写个demo实现下,如图: 其中每个按钮都有不同的功能,代码如下: package ...
  • onceing
  • onceing
  • 2015年07月16日 14:44
  • 2205

cordova插件之Local Notification(本地通知)

本地通知的基本目的是使应用程序能够通知用户,它为他们提供了一些信息例如,当应用程序没有在前台运行时,通知用户一个消息或即将到来的约会。本地通知大多是基于时间的,如果触发就会在通知中心显示并呈现给用户。...
  • smile_panda
  • smile_panda
  • 2016年03月04日 08:45
  • 3605

Notifications (通知、通告)

概述 许多典型的情况下会出现如下要求:要求你通知用户刚才在你应用中发生的事情。有时需要用户做出回应,有时却不需要。例如: 当文件存储完成时,一条安全的消息需要查收时 等这类事件。 如...
  • yh_android_blog
  • yh_android_blog
  • 2016年07月08日 10:17
  • 984

notifications 消息通知(本地事件通知)

一、 涉及的概念涉及的概念:事件,消息,消息中心,监听者,消息发送者二、 基本流程:路线一: 1.消息中心登记监听者及其需要监听的消息(也叫注册监听者)。 2.消息发送者发送消息。 3.消息中心...
  • ohyeahhhh
  • ohyeahhhh
  • 2016年07月07日 10:14
  • 564

Android开发概要记录

1..o文件、 .ko和.so文件的路径\kernel\out\mediatek---------------.o文件.c/.cpp文件编译生成的目标文件\out\target\product\hsi...
  • LoongEmbedded
  • LoongEmbedded
  • 2014年12月03日 11:07
  • 2308

Android6.0 Notification工作原理源码解析(二)

上一篇讲了通知是怎么创建的,这章正式开始跟踪通知的发送流程。时序图分析通知的发送是通过NotificationManager的notify()方法:NotificationManger->notify...
  • tp7309
  • tp7309
  • 2017年03月20日 12:41
  • 1147

android notification点击与移除监听

private void showNotification() { NotificationManager mNotificationManager = (NotificationManager...
  • y649950268
  • y649950268
  • 2015年11月02日 09:53
  • 2063

iOS 通知机制 Notifications (一)

A notification encapsulates information about an event, such as a window gaining focus or a network ...
  • majiakun1
  • majiakun1
  • 2013年12月15日 21:35
  • 3185

浏览器桌面通知(notifications)

最近在做公司后台管理系统,当有任务到来时,需要通知当事人,但是 当事人有可能在做别的,浏览器有可能会被最小化,这样就很难看到通知了。经过查找发现有些浏览器可以使用noitfications。可以在桌面...
  • rentiansheng
  • rentiansheng
  • 2014年04月28日 17:31
  • 2834
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android 用户界面---通知(Notifications)概要
举报原因:
原因补充:

(最多只允许输入30个字)