- 浏览: 50532 次
文章分类
- 全部博客 (25)
- Android (19)
- startActivityForResult() (1)
- Intent (3)
- HTML (1)
- onCreate (1)
- Button (3)
- OnClick (3)
- Activity (2)
- savedInstanceState (1)
- Service (2)
- message (1)
- Notification (1)
- Broadcast (1)
- SQLite (1)
- SharePreferences (1)
- Galaxy 9300 (1)
- 刷机 (1)
- root (1)
- ContentProvider (1)
- 笔记本 (1)
- 散热 (1)
- 算法 (3)
- C (4)
- socket (0)
- java (0)
最新评论
Status Notification是作用是在页眉的位置,提示用户某一项操作已完成或者请求用户交互,当用户选择并点击后,会启动相应的操作。比如Service的下载任务完成,可以用此方法提醒用户;还有比如未接电话提示等等。
后台的Service不应该为了得到用户的交互去启动一项Activity,而应该生成一个Status Notification,当用户选择点击后,这个Status Notification去启动Activity。
一个Status Notification包含Status Bar和Notification Message两部分。
Activity和Service都可以初始化一个Status Notification。但是由于Activity只能处于前端且获得焦点才能执行动作,所以总是在Service中生成Status Notification。这样,Notification就可以在后台生成,比如用户在运行其他应用或者设备睡眠的时候。
生成Notification,需要用到两个类:Notification和NotificationManager。
package com.test.statusnotificationdemo; import android.os.Bundle; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.view.Menu; import android.view.MenuItem; import android.support.v4.app.NavUtils; public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } @Override protected void onStart() { // TODO Auto-generated method stub super.onStart(); //创建NotificationManager,这里并不是用New方法 //创建的mNotificationManager对象负责"发出"和"取消"notification NotificationManager mNotificationManager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); //这里是设置notification的bar,三个参数分别是在bar上显示的图标、信息、时间 Notification notification=new Notification(R.drawable.ic_launcher, "Hello", System.currentTimeMillis()); //PendingIntent是一个封装好的Intent,它并不立即执行,而且等待事件来触发 //Activity.this的context 返回当前activity的上下文,属于activity ,activity 摧毁他就摧毁 //getApplicationContext() 返回应用的上下文,生命周期是整个应用,应用摧毁它才摧毁 Context context=getApplicationContext(); CharSequence contextTitle="My notification"; CharSequence contextText="Hello World!"; Intent notificationIntent=new Intent(this,NotificaitionActivity.class); //PendingIntent 为Intent的包装,这里是启动Intent的描述,PendingIntent.getActivity 返回的PendingIntent表示,此PendingIntent实例中的Intent是用于启动 Activity 的Intent。 PendingIntent contentIntent=PendingIntent.getActivity(this, 0, notificationIntent, 0); notification.setLatestEventInfo(context, contextTitle, contextText, contentIntent);//四个参数分别为:所在的Activity或application、详细信息Title、详细信息内容Text、相应的Intent //用mNotificationManager发出notification int HELLO_ID=1;//用于notification的标识 mNotificationManager.notify(HELLO_ID, notification); } }
发表评论
-
ContentProvider
2012-08-09 14:43 856ContentProvider学习笔记 ContentPro ... -
Galaxy 9300 刷机和获取root权限
2012-08-08 14:19 1619刷机和ROOT是两个不同但是很类似的动作。 刷机应该就 ... -
SharedPreferences 存储
2012-07-27 20:02 929SharedPreferences是Android平台 ... -
SQLite 存储
2012-07-27 10:33 805SQLite是一种轻量级的,嵌入式的数据库系统,它占用的资源非 ... -
Android Broadcast 广播
2012-07-23 10:47 946从现实生活中理解广播机制 一听到广播我们第一感觉就会联 ... -
Android Message机制
2012-07-20 11:01 1211参考链接http://www.cnblogs.com/hnra ... -
Android Service之bindService()
2012-07-17 14:37 1224http://www.cnblogs.com/onlylitt ... -
Android Service 之StartService()
2012-07-17 10:25 11797Service是android 系统中的一种组件,它跟Acti ... -
Activity_savedInstanceState
2012-07-14 10:31 4026假设有两个Activity,分别是MainActivity,S ... -
Activity生命周期
2012-07-13 11:24 763Activity的生命周期图如上所示 用一个实例来测试 ... -
ButtonDemo_OnClick_2
2012-07-13 00:47 634public void onCreate(Bundle ... -
intentDemo_2
2012-07-13 00:45 784<manifest xmlns:android=& ... -
intentDemo_1
2012-07-13 00:45 605package com.test.intentdemo; ... -
ButtonDemo_OnClick_3
2012-07-13 00:45 600package com.test.buttondemo; ... -
ButtonDemo_OnClick_1
2012-07-12 22:51 900public class MainActivity ex ... -
Android开发——关于onCreate的解读
2012-07-12 22:48 622在AndroidManifest.xml文件中的< ... -
startActivityForResult()的用法
2012-07-12 22:43 1616参考链接:http://www.cnblogs.com/mub ... -
Intent传递数据从一个Activity到另一个Activity
2012-07-12 21:19 11831MainActivity package com.te ...
相关推荐
AgentLight是用于Avaya联系中心的座席状态通知的软件。 该软件与USB照明设备集成在一起,并通过打开或闪烁不同颜色的设备来显示座席状态。 例如,该软件可以配置为以绿色显示座席空闲和正在呼叫时显示红色。
Notification分为多种类型,包括Toast、StatusBar Notification和Dialog Notification,每种都有其特定的使用场景。 1. Toast Notification: Toast是一种短暂的通知方式,它在屏幕上显示一段时间后自动消失,不会...
项目名称中的"SN"可能代表"Status Notification"或"Simple Notification",表明这是一个关注通知状态的库。"NotificationBadge"直译为"通知徽章",正是该库的核心功能。它支持多种品牌和型号的Android设备,包括但不...
1995年,SMTP进行了扩展,引入了EHLO命令,以支持更多的ESMTP命令,如DSN(Delivery Status Notification)提供邮件状态通知,以及ETRN( Expedited Transport Reversal)允许客户端请求邮件的批量投递。这些扩展...
4. **DSN(Delivery Status Notification)支持**:dsn.jar 提供了回执和通知功能,可以获取邮件的传递状态,这对于跟踪邮件是否成功送达非常重要。 5. **Mail API**:mailapi.jar 是JavaMail的核心库,包含了所有...
8. **DSN(Device Status Notification)**:设备状态通知服务用于节点向主设备报告其当前状态,例如电源状态、故障状态等。 9. **CIA DSP(CiA Device Services Profile)**:CiA设备服务配置文件是一组规定的服务...
7. **dsn.jar**:Delivery Status Notification (DSN) 是一种邮件返回通知机制,告知发件人邮件是否成功送达或被拒绝。这个jar文件可能包含了DSN相关功能的实现,帮助开发者跟踪邮件的交付状态。 使用这些jar文件,...
2. **dsn.jar**:Delivery Status Notification (DSN) 是一种邮件协议,允许发送者知道邮件是否成功送达或者被接收者拒绝。DSN.jar包含了处理邮件回执和非投递报告(NDR,也称为退信)所需的功能。 3. **imap.jar**...
这些代码基于**传递状态通知(Delivery Status Notification,简称DSN)**的标准,详细记录了邮件递送过程中遇到的各种情况。DSN的数字代码分为三类: 1. **成功(2.X.X)**:表示邮件已经成功递送到目标邮箱。 2. ...
11. GP4(Production Part Approval Status Notification):生产件批准状况通知,表明零部件已通过质量验证,可以投入生产。 12. GP5(Supplier Quality Monitoring Process (GM1746)):供应商质量监控流程,确保...
### 如何隐藏Android 4.0及以上版本的ActionBar、NotificationBar、StatusBar、SystemBar、TitleBar 在Android应用开发过程中,有时为了实现特定的设计效果或界面需求,开发者可能需要隐藏某些系统组件,如...
Version 0.9.2 - Fixed: problem with "RAM Status Notification" screen and other small issues 【使用方法】直接复制到PDA中,安装和运行。去掉官方语言文件,采用核心汉化。 【特别提示】CAB和绿色 =====...
#### 一、StatusBar与Notification概述 StatusBar,即状态栏,在移动设备上是一种常见的用户界面元素,用于显示设备的状态信息,如信号强度、时间、电池电量等。同时,状态栏还承载了一个重要的功能——...
3. **动态状态图标(Dynamic Status Icons)**: - 动态图标常用于表示某过程的状态,例如加载中的循环箭头,完成时的勾号等。 - 可通过创建自定义的`RemoteViews`并在其中设置动画或者状态变化的图片来实现。 - ...
int progress = (int) (100 * currentStatus / totalStatus); builder.setProgress(100, progress, false); notificationManager.notify(NOTIFICATION_ID, builder.build()); ``` 4. **完成任务**:任务完成后,...
本篇文章将详细介绍 Android 系统中的状态栏(StatusBar)以及如何通过简单的代码实现自定义的通知(Notification)。状态栏是 Android 设备顶部的一个区域,它显示了时间、电池电量、网络连接状态等基本信息。此外...
在Android系统中,SystemUI是用户界面的重要组成部分,它包含了状态栏(StatusBar)、通知面板(Notification Panel)等关键元素。本篇文章将详细分析Android 4.0冰淇淋三明治(Ice Cream Sandwich,简称ICS)中的SystemUI...
"在窗口顶端或者下端弹出自定义的提示视图(notification View)。例如,图中上方的黑色标签“This is the notification.""。可用于显示当前app的状态,用户操作的提示等等。" 注意:请在Mac下解压使用