1. 通知的使用场合
当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以借助通知来实现。发出一条通知后,手机最上方的状态栏中会显示一个通知的图标,下拉状态栏后可以看到通知的详细内容。
2. 通知的创建步骤
(1)获取NotificationManager实例,可以通过调用Conten的getSystenService()方法得到,getSystemService()方法接收一个字符串参数用于确定获取系统的哪个服务, 这里我们传入Context.NOTIFICATION_SERVICE 即可。获取NotificationManager实例如下:
NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
(2)创建Notification对象,该对象用于存储通知的各种所需信息,我们可以使用它的有参构造函数来创建。构造函数有三个参数,第一个参数指定通知图标,第二个参数用于指定通知的ticker 内容,当通知刚被创建的时候,它会在系统的状态栏一闪而过,属于一种瞬时的提示信息。第三个参数用于指定通知被创建的时间,以毫秒为单位,当下拉系统状态栏时,这里指定的时间会显示在相应的通知上。创建一个Notification 对象可以写成:
Notification notification = new Notification(R.drawable.ic_launcher,"This is a ticker text",System.currentTimeMillis());
(3)调用Notification的setLatestEventIfo()方法对通知的布局进行设定,这个方法接收四个参数,第一个参数是Context。第二个参数用于指定通知的标题内容,下拉系统状态栏就可以看到这部分内容。第三个参数用于指定通知的正文内容,同样下拉系统状态栏就可以看到这部分内容。第四个参数用于指定实现通知点击事件的PendingIntent对象,如果暂时用不到可以先传入null。因此,对通知的布局进行设定就可以写成:
notification.setLatestEventInfo(context, "This is content title", "This iscontent text", null);
(4)调用NotificationManager的notify()方法显示通知。notify()方法接收两个参数,第一个参数是id,要保证为每个通知所指定的id 都是不同的。第二个参数则是Notification 对象,这里直接将我们刚刚创建好的Notification 对象传入即可。显示一个通知就可以写成:
manager.notify(1, notification);
3.代码示例
public class MainActivity extends Activity implements OnClickListener {
private Button sendNotice;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sendNotice = (Button) findViewById(R.id.send_notice);
sendNotice.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.send_notice:
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification = new Notification(
R.drawable.ic_launcher, "This is a ticker text", System.currentTimeMillis());
notification.setLatestEventInfo(this, "This is content title",
"This is content text", null);
manager.notify(1, notification);
default:
break;
}
}
}
另外,我在开发完APP都会用一些APP在线自动化测试工具进行测试:
http://www.ineice.com
分享到:
相关推荐
本教程将详细介绍如何在Android中实现一个常驻通知栏的Notification,以确保即使在用户关闭应用后,该通知仍然可见。 一、Notification的基本结构 1. **Notification channels**: 从Android O(8.0)开始,每个...
这个"Notification_Test"压缩包中的代码应该包含了以上步骤的实现,你可以下载并运行来深入理解Android通知的工作原理。通过实践,你将能够熟练地在自己的应用中集成通知功能,提供更好的用户体验。同时,还可以...
总结一下,发送Android通知的基本流程包括获取`NotificationManager`、创建`Notification`、设置详细信息以及发送通知。为了提高用户体验,开发者还应考虑通知的可定制性,如声音、振动和渠道设置,以及遵循Android...
一、Notification基本使用 Notification主要由三个核心组件构成:Notification.Builder、NotificationChannel(Android O及以上版本)和PendingIntent。创建一个简单的Notification通常需要以下步骤: 1. 创建...
本资源包针对Android通知栏的使用进行了全面整合,涵盖了各种应用场景和实现方式,是Android开发者深入理解与实践Notification功能的理想资料。 首先,我们来探讨Android通知的基本结构。一个通知通常包括以下组件...
"安卓Android源码——notification1.rar"这个压缩包很可能包含了Android系统中关于通知机制的源代码,帮助开发者深入理解其工作原理。 通知在Android中的实现涉及到多个组件和接口,主要包括以下几个关键知识点: ...
创建一个基本的Android通知通常需要以下步骤: 1. **创建通知渠道**:对于Android 8.0及更高版本,首先需要创建NotificationChannel对象,并通过NotificationManager的createNotificationChannel方法进行注册。 2....
本文将详细介绍Android中的三种Notification实现方式:基本通知、扩展通知和通知渠道。 一、基本通知 基本通知是最简单的通知形式,适用于传递简短的信息。创建一个基本通知主要涉及以下步骤: 1. 创建...
本项目是一个基于Android 2.3(Gingerbread)版本的小实例,旨在帮助开发者学习如何使用Notification API创建和管理通知。 首先,创建Notification需要使用`NotificationCompat.Builder`类,它是Android Support ...
在Android系统中,Notification是应用与用户交互的重要方式之一,特别是在后台运行时,它能向用户提供关键信息。常驻Notification是指即使用户关闭了应用程序,Notification仍然保留在通知栏,持续提醒用户有未处理...
本文将深入探讨Android中通知的基本使用,包括创建、管理和自定义通知的方法。 首先,我们要了解Android的通知结构。一个基本的通知由以下部分组成: 1. **通知渠道(Notification Channel)**:从Android 8.0...
本文将深入探讨如何在Android中使用Notification,包括基本用法、自定义样式以及高级特性。 ### 1. Notification的基本结构 每个Notification由一个`NotificationCompat.Builder`构建,它包含以下核心组件: - `...
本教程将详细讲解如何在Android应用中使用Notification,以创建有效的手机通知。 一、Notification概述 Notification是Android提供的一种原生组件,用于在状态栏显示消息,当用户滑动下拉通知中心时,可以看到更...
在Android开发中,自定义通知栏Notification是一种提升用户体验的重要手段。...这个项目不仅提供了基本的自定义通知功能,也可能包含了一些进阶技巧和优化措施,对深入理解Android通知系统非常有帮助。
本文将详细介绍如何在Android中使用Notification,包括基本用法、响应通知点击事件以及不同API级别下的实现方式。 一、通知的基本用法 1. API Level 10及以下的创建方法(已废弃): 通过`Notification`类的构造...
在Android系统中,`Notification`是开发者用于向用户展示非交互式信息的重要工具,它通常出现在状态栏中,用户可以通过下拉通知栏查看并交互。`Notification`可以在应用不处于前台运行时,依然向用户传达重要的消息...
"安卓Android源码——实现Notification的通知栏常驻.zip"这个资源显然包含了关于如何使通知在通知栏中持续显示的代码示例。这里我们将深入探讨Android中创建和管理Notification的基本概念,以及如何实现通知栏常驻。...
在Android系统中,Notification是应用与用户交互的重要方式,它能提醒用户有新的事件或信息需要处理,即使应用不在前台运行。Notification分为多种类型,包括Toast、StatusBar Notification和Dialog Notification,...
在本文中,我们将深入探讨如何在Android中创建和使用Notification,以及如何实现普通通知和自定义视图通知。 首先,创建一个Notification需要以下步骤: 1. 创建Notification.Builder对象:这是构建Notification的...
通过这个例子,开发者可以了解到`Notification`的基本构造和使用方法,并可以根据实际需求进行扩展,比如设置自定义视图、添加声音、震动等效果。 总结,状态栏通知小图标是Android应用与用户进行无声沟通的重要...