`
jk138
  • 浏览: 150341 次
  • 性别: Icon_minigender_1
  • 来自: 茂名
社区版块
存档分类
最新评论

Android实例五:Notification通知和Broadcast结合

阅读更多

第一步.MainActivity.java

    package com.chaowen;

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import com.chaowen.R;
public class MainActivity extends Activity {
     private Button sendBtn;
     private static final String MY_ACTION = "com.chaowen.action.MY_ACTION";
     
     
   
     
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        
        sendBtn  = (Button)findViewById(R.id.sendButton01);
       
        
      
        
        //为按钮添加监听器
        sendBtn.setOnClickListener(sendListener);
        
        
    }
    
    
    //发送通知监听器
    private OnClickListener sendListener = new OnClickListener() {
		
		@Override
		public void onClick(View v) {
			Intent intent = new Intent();
		     intent.setAction(MY_ACTION);
		     sendBroadcast(intent);
		}
	};
	
	
}

  第二步,接收类MyReceive.java

    package com.chaowen;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
/**
 * 接收广播,收到广播后启动另一个Activity来显示通知
 * @author chaowen
 *
 */
public class MyReceive extends BroadcastReceiver {

	@Override
	public void onReceive(Context context, Intent intent) {
	    Intent i = new Intent();
	    //在新的任务中启动Activity
	    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
	    //设置Intent启动的组件名称
	    i.setClass(context, DisplayActivity.class);
	    context.startActivity(i);
	}

}

  第三步.显示通知.DisplayActivity.java

  package com.chaowen;

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class DisplayActivity extends Activity {
    private Button cancelBtnButton;
    private Notification notification;
    private NotificationManager nmManager;
    private static final int ID=1;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
    	super.onCreate(savedInstanceState);
        setContentView(R.layout.main2);
        
        cancelBtnButton=(Button)findViewById(R.id.cancelButton02);
        nmManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
        notification = new Notification();
        
        int icon = notification.icon=R.drawable.happy;
        String tickerText ="Test Notification";
        long when = System.currentTimeMillis();
        notification.icon=icon;
        notification.tickerText = tickerText;
        notification.when=when;
        
        Intent intent = new Intent(this,MainActivity.class);
        PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);
        notification.setLatestEventInfo(this, "my title", "my Content", pi);
        nmManager.notify(ID,notification);
        
        //为按钮添加监听器
        cancelBtnButton.setOnClickListener(cancelListener);
    }
    
    private OnClickListener cancelListener = new OnClickListener() {
		
		@Override
		public void onClick(View v) {
			nmManager.cancel(ID);
			
		}
	};
}
分享到:
评论

相关推荐

    Android入门到精通源代码.

    2.3 Android SDK的下载和安装 2.3.1 下载Android SDK 2.3.2 安装Android SDK 2.3.3 创建Android虚拟设备 2.4 Eclipse的下载和安装 2.4.1 下载和安装Eclipse 2.4.2 安装和配置Eclipse中Android插件 2.5 使用Eclipse...

    《Google Android开发入门与实战》

    第7章 良好的学习开端——Android基本组件介绍之温馨的提醒——Toast和Notification应用 第8章 移动信息仓库——Android的数据存储操作之Android数据存储概述 第8章 移动信息仓库——Android的数据存储操作之轻轻地...

    android开发入门与实战(下)

    7.5 Android应用的灵魂——Intent和Activity介绍与实例 7.5.1 实例操作演示 7.5.2 实例编程实现 7.6 用好列表,做好程序——列表(ListView)介绍与实例 7.6.1 实例程序演示 7.6.2 实例编程实现 7.7 友好地互动交流...

    《Google Android开发入门与实战》.pdf

    在程序实例的讲解方面,主要将实例安插在android开发的精髓知识章节,这为初学者学习与实践结合提供了很好的指导。.  本书配套有400多分钟的全程开发视频光盘,指导读者快速、无障碍地学通android实战开发技术。.. ...

    android开发入门与实战(上)

    7.5 Android应用的灵魂——Intent和Activity介绍与实例 7.5.1 实例操作演示 7.5.2 实例编程实现 7.6 用好列表,做好程序——列表(ListView)介绍与实例 7.6.1 实例程序演示 7.6.2 实例编程实现 7.7 友好地互动交流...

    Android开发案例驱动教程 配套代码

    第14章 Broadcast Receiver和Notification 348 14.1 Broadcast Receiver 348 14.1.1 音频播放案例 349 14.1.2 编写音频播放Broadcast Receiver 350 14.1.3 注册音频播放Broadcast Receiver 351 14.1.4 接收系统...

    新版Android开发教程.rar

    的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...

    [Android开发权威指南].李宁.扫描版.pdf

    并将重要的知识点和开发技巧以“多学一招” “扩展学习” “技巧点拨”等的活泼形式呈现给读者 在程序实例的讲解方面 主要将实例安插在Android开发的精髓知识章节 这为读者学习与实践结合提供了很好的指导 ...

    Google.Android开发入门与实战

    在程序实例的讲解方面,主要将实例安插在Android开发的精髓知识章节,这为初学者学习与实践结合提供了很好的指导。《Android开发入门与实战》配套有400多分钟的全程开发视频光盘,指导读者快速、无障碍地学通Android...

    疯狂Android讲义源码

     1.1 Android的发展和历史 2  1.1.1 Android的发展和简介 2  1.1.2 Android平台架构及特性 3  1.2 搭建Android开发环境 5  1.2.1 下载和安装Android SDK 5  1.2.2 安装Eclipse和ADT插件 7  1.3 Android常用...

    Google Android开发入门与实战的代码

    7.5 Android应用的灵魂——Intent和Activity介绍与实例 106 7.5.1 实例操作演示 106 7.5.2 实例编程实现 106 7.6 用好列表,做好程序——列表(ListView)介绍与实例 111 7.6.1 实例程序演示 111 7.6.2...

    《Android开发权威指南》 PDF (安卓sdk 2.3)

    第一部分 准备篇,包括第1章和第2章,第1章 Android开发简介、第2章 搭建和使用Android开发环境。 第二部分 基础篇,包括第3章~第16章,第3章 Android程序设计基础、第4章 用户界面开发基础、第5章 控件(Widget)...

    Android开发权威指南

    第一部分 准备篇,包括第1章和第2章,第1章 Android开发简介、第2章 搭建和使用Android开发环境。, 第二部分 基础篇,包括第3章~第16章,第3章 Android程序设计基础、第4章 用户界面开发基础、第5章 控件(Widget)...

    android app安卓开发教程之27个小例子附源代码.zip

    android app安卓开发教程之27个小例子附源代码.zip alertDialog animation audio broadcast Bundle 数据库 下载文件 draw expandableList http iconFile imageView Intent listView menu mouseover notification ...

    Android基于广播事件机制实现简单定时提醒功能代码

    本文实例讲述了Android基于广播事件机制实现简单定时提醒功能代码。分享给大家供大家参考,具体如下: 1.Android广播事件机制 Android的广播事件处理类似于普通的事件处理。不同之处在于,后者是靠点击按钮这样的...

Global site tag (gtag.js) - Google Analytics