Android周学习Step By Step(9)--Intent之广播(完)
来源:互联网 发布:淘宝卖出去的钱在哪里 编辑:程序博客网 时间:2024/06/07 03:06
通过broadcast Intent机制可以将一个Intent发送给任何对这个Intent感兴趣的BroadcastReceiver。
通过new Intent(ACTION_1)新建Action为ACTION_1的Intent。
通过sendBroadcast(intent)将这个intent进行广播。代码如下
ActivityMain代码:
1: package com.eoeandroid.broadcastReceiver;
2: import android.app.NotificationManager;
3: import android.content.BroadcastReceiver;
4: import android.content.Context;
5: import android.content.Intent;
6: public class EoeAndroidReceiver2 extends BroadcastReceiver {7: Context context;
8: @Override9: public void onReceive(Context context, Intent intent) {10: // TODO Auto-generated method stub11: this.context = context;12: DeleteNotification();
13: }
14: private void DeleteNotification() {15: NotificationManager notificationManager = (NotificationManager) context
16: .getSystemService(android.content.Context.NOTIFICATION_SERVICE);
17: notificationManager.cancel(EoeAndroidReceiver1.NOTIFICATION_ID);
18:
19: }
20: }
当单击MENU的第一项后,程序执行到EoeAndroidReceiver1,通过OnRecievie方法将一个Notification显示在了状态栏中。其中showNotification()负责显示一个Notification。代码如下:
EoeAndroidReceiver1代码
1: package com.eoeandroid.broadcastReceiver;
2: import android.app.Notification;
3: import android.app.NotificationManager;
4: import android.app.PendingIntent;
5: import android.content.BroadcastReceiver;
6: import android.content.Context;
7: import android.content.Intent;
8: public class EoeAndroidReceiver1 extends BroadcastReceiver {9: Context context;
10: public static int NOTIFICATION_ID = 21321;11: @Override12: public void onReceive(Context context, Intent intent) {13: this.context = context;14: showNotification();
15: }
16: private void showNotification() {17: NotificationManager notificationManager = (NotificationManager) context
18: .getSystemService(android.content.Context.NOTIFICATION_SERVICE);
19: Notification notification = new Notification(R.drawable.icon,20: "在EoeAndroidReceiver1中", System.currentTimeMillis());21: PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
22: new Intent(context, ActivityMain.class), 0);23: notification.setLatestEventInfo(context, "在EoeAndroidReceiver1中", null,24: contentIntent);
25: notificationManager.notify(NOTIFICATION_ID, notification);
26: }
27: }
单击第二个按钮后程序开始广播,这个广播被EoeAndroidReceiver2截获然后开始执行EoeAndroidReceiver2里的OnReceive方法,其中DeleteNotification()方法负责将刚才生成的Notification从状态栏中删除。代码如下:
EoeAndroidReceiver2代码
1: package com.eoeandroid.broadcastReceiver;
2: import android.app.NotificationManager;
3: import android.content.BroadcastReceiver;
4: import android.content.Context;
5: import android.content.Intent;
6: public class EoeAndroidReceiver2 extends BroadcastReceiver {7: Context context;
8: @Override9: public void onReceive(Context context, Intent intent) {10: // TODO Auto-generated method stub11: this.context = context;12: DeleteNotification();
13: }
14: private void DeleteNotification() {15: NotificationManager notificationManager = (NotificationManager) context
16: .getSystemService(android.content.Context.NOTIFICATION_SERVICE);
17: notificationManager.cancel(EoeAndroidReceiver1.NOTIFICATION_ID);
18: }
19: }
Android学习到此告一段落,经过一周的学习(严格的说学习的时间外加写论文的时间是一周,总结、写博客的时间远远大于一周)只能对Android有个大致的了解,还有很多方面由于时间的原因不能够深入学习,甚至很多都没有接触到,以后有时间再学习吧。
Android,有缘我们还会再见!
- Android周学习Step By Step(9)--Intent之广播(完)
- Android周学习Step By Step(8)--Intent之启动新的Activity
- Android周学习Step By Step(2)--HelloWorld
- Android周学习Step By Step(4)--界面布局
- Android周学习Step By Step(7)--Activity简介
- android学习step by step.
- Linux 学习 step by step (2)
- Android周学习Step By Step(6)--Android的数据库SQLite
- Android周学习Step By Step(1)--简单介绍环境搭建
- Android周学习Step By Step(3)--应用工程文件组成
- Android周学习Step By Step(5)--常用widget组件
- XXE学习之路-STEP BY STEP
- Solaris 10 学习笔记step by step(一)
- OpenGL Step by Step (1)
- cetia4入门step by step(1)
- PL/SQL Step By Step(一)
- PL/SQL Step By Step(二)
- PL/SQL Step By Step(三)
- VIM学习--删除
- Vim 实用技术,第 2 部分: 常用插件
- Android 动画框架详解
- Vim 实用技术,第 3 部分: 定制 Vim
- git 使用详解
- Android周学习Step By Step(9)--Intent之广播(完)
- windows critical section (关键段)
- linux平台启动关闭oracle数据库
- 大端与小端
- verilog
- MyEclipse实现超级联想功能
- 异步AsyncTask,怎样停止AsyncTask和Thread
- Makefile文件之cd无语
- 学会珍惜