Android开发入门(四)发送通知 4.2 Notification通知

到目前为止,想必大家已经都熟悉使用Toast去给用户显示信息了。尽管使用Toast很方便,但是Toast显 示的通知并不是永久存储的。它只在屏幕上显示一小段时间,然后就消失了。如果它包含一些特别重要的信 息,如果用户没有观察屏幕,那么用户就很容易错过它。

对于那些重要的信息,应该采用一种更加持 久保存的方法。在这种情况下,应该使用NotificationMnanger(消息管理器)去显示一个长久的信息,这个 消息被显示在了StatusBar(状态栏)上面,使用用户能够很容易地看见。

接下来展示如何发送一个 Notification通知。

1. 创建一个工程:Notifications。

2. 在包中新建一个名为 NotificationView的类,同时在res/layout文件夹下面新建一个名为notification.xml 文件,它将作为 NotificationView的视图。

3. notification.xml中的文件。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >    

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Here are the details for the notification..." />    

</LinearLayout>

4.NotificationView.java中的代码。

public class NotificationView extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.notification);    

        // ---look up the notification manager service---
        NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);  

        // ---cancel the notification that we started---
        nm.cancel(getIntent().getExtras().getInt("notificationID"));
    }
}

5. AndroidManifest.xml中的代码。

<?xml version="1.0" encoding="utf-8"?> 

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="net.learn2develop.Notifications"
    android:versionCode="1"
    android:versionName="1.0" >    

    <uses-sdk android:minSdkVersion="14" />
    <uses-permission android:name="android.permission.VIBRATE"/>    

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:label="@string/app_name"
            android:name=".NotificationsActivity" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />    

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".NotificationView"
            android:label="Details of notification">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>    

</manifest>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索notification
, android notification
, 用户
, notificationmanager
, savedinstancestate
一个
发送notification、extjs4.2入门教程、android notification、android 4.2、android sdk4.2下载,以便于您获取更多的相关知识。

时间: 2024-10-03 18:05:22

Android开发入门(四)发送通知 4.2 Notification通知的相关文章

《Android 开发入门与实战(第二版)》——6.4节Activity拥有四个基本的状态

6.4 Activity拥有四个基本的状态Android 开发入门与实战(第二版)活动中:如果Activity在屏幕前(即在栈的最顶部),它是可视的,可接受用户输入的. 暂停:如果Activity已经失去了焦点,但是仍然可见(即,一个非全屏或者透明的Activity在你的Activity的上方拥有焦点),它的状态是暂停.一个暂停状态下的Activity是完全活着的(它保留了所有状态和成员信息并仍然附加到视图管理器),但在系统极端低内存的情况下可以被杀死. 停止:如果一个Activity完全被另一

Android开发入门系列

Android开发入门(二十)内容提供者 20.3 经过预定义的查询字符 Android开发入门(二十)内容提供者 20.2 ContentProvider的使用 Android开发入门(二十)内容提供者 20.1 数据共享 Android开发入门(十九)数据库 19.3 预创建数据库 Android开发入门(十九)数据库 19.2 使用数据库 Android开发入门(十九)数据库 19.1创建数据库辅助类 Android开发入门(十八)文件 18.4使用静态资源 Android开发入门(十八)

《Android 开发入门与实战(第二版)》——6.5节Task、栈以及加载模式

6.5 Task.栈以及加载模式 Android 开发入门与实战(第二版) 在Android应用程序中,应用程序中的Activity是可以启动其他程序的Activity的,例如,你在A程序中单击了某一串链接地址,应用会自动调用系统的浏览器帮你打开这个链接(如果你的系统中存在多个浏览器,则会打开多个并让你选择其中一个),虽然A程序和浏览器不属于同一个应用,但是你单击"回退"按钮后,依然可以回退到A程序中.像这种无缝的用户体验,主要得益于Android中的Task. 那什么是Task呢?通

Android开发入门之Notification用法分析_Android

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

Android开发入门之Notification用法分析

本文实例讲述了Android中Notification用法.分享给大家供大家参考,具体如下: Notification可以理解为通知的意思一般用来显示广播信息 用Notification就必须要用到NotificationManager 想用Notification一般有三个步骤,如下所示 ① 一般获得系统级的服务NotificationManager. 调用Context.getSystemService(NOTIFICATION_SERVICE)方法即可返回NotificationManag

android开发-Android开发入门初学遇到的问题

问题描述 Android开发入门初学遇到的问题 Android开发入门学习,使用的是<第一行代码Android>郭霖著在学习至2.2.5 在活动中使用Toast中产生如下疑问,期待各位前辈帮我解答图中为输入的代码 问题1.书中原话是可以通过findViewById()方法获取到在布局文件中定义的元素,这里我们传入R.id.button 1,来得到按钮的实例,这里的按钮的实例是什么意思能否麻烦详细解释一下. 问题2.书中说findViewById()返回的是一个View对象,我们需要向下转型将它

Android开发入门之Appwidget用法分析_Android

本文实例讲述了Android Appwidget用法.分享给大家供大家参考,具体如下: App Widgets 是一个小型应用程序的View  他可以嵌入到其他应用程序中(如 桌面程序) 并且可以得到周期性刷新. 在创建App Widget之前需要了解以下几个概念 AppWidgetProviderInfo对象 它是对App Widget 元数据的一个描述,譬如 AppWidget的布局,刷新频率,以及   AppWidgetProvider 类  这些元数据都是定义在XML中. AppWidg

Android开发入门之Appwidget用法分析

本文实例讲述了Android Appwidget用法.分享给大家供大家参考,具体如下: App Widgets 是一个小型应用程序的View  他可以嵌入到其他应用程序中(如 桌面程序) 并且可以得到周期性刷新. 在创建App Widget之前需要了解以下几个概念 AppWidgetProviderInfo对象 它是对App Widget 元数据的一个描述,譬如 AppWidget的布局,刷新频率,以及   AppWidgetProvider 类  这些元数据都是定义在XML中. AppWidg

Android开发入门(二十)内容提供者 20.1 数据共享

在上一章节中,我们介绍了数据持久化的几种方法:首选项,文件,以及数据库.在保存复杂的数据结构 时,推荐使用SQliteDatabase.但是,共享数据就成了一种挑战,因为,数据库只对创建它的程序包可用. 在这一章节中,将会介绍Android特有的数据共享方式:使用ContentProvider.也会介绍如何使用内 置的ContentProvider,以及创建自己的ContentProvider,以便在多个程序包之间共享数据. 在 Android中,共享数据的推荐方式是使用ContentProvi

Android开发入门(十一)选择控件 11.1 TimePicker

使用TimePicker,可以让用户去选择一天中的事件,包括24小时制和AM/PM制.下面的例子将会展示如何 使用TimePicker. 1. 创建一个工程:BasicViews4. 2. main.xml中的代码. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&q