根据activity的生命周期,在activity不显示时,会执行onStop函数,所以你在onStop函数(按退出键除外)里面把notification放在通知栏里,再此显示时,把notification从通知栏里去掉。
或者,只要程序在运行就一直显示通知栏图标,这样简单点。
privatevoid showNotification() {
// 创建一个NotificationManager的引用
NotificationManager notificationManager = (NotificationManager)
context.getSystemService(android.content.Context.NOTIFICATION_SERVICE);
// 定义Notification的各种属性
Notification notification =new Notification(R.drawable.icon,
"天籁之音播放器", System.currentTimeMillis());
notification.flags |= Notification.FLAG_ONGOING_EVENT; // 将此通知放到通知栏的"Ongoing"即"正在运行"组中
notification.flags |= Notification.FLAG_NO_CLEAR; // 表明在点击了通知栏中的"清除通知"后,此通知不清除,经常与FLAG_ONGOING_EVENT一起使用
notification.flags |= Notification.FLAG_SHOW_LIGHTS;
notification.defaults = Notification.DEFAULT_LIGHTS;
notification.ledARGB = Color.BLUE;
notification.ledOnMS =5000;
// 设置通知的事件消息
CharSequence contentTitle ="天籁之音正在播放……"; // 通知栏标题
CharSequence contentText ="ameyume"; // 通知栏内容
Intent notificationIntent =new Intent(context, MusicDemo.class); // 点击该通知后要跳转的Activity
PendingIntent contentItent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText,
contentItent);
// 把Notification传递给NotificationManager
notificationManager.notify(0, notification);
}
去掉通知栏通知的方法
// 启动后删除之前我们定义的通知
NotificationManager notificationManager = (NotificationManager) this
.getSystemService(NOTIFICATION_SERVICE);
notificationManager.cancel(0);
转载至http://hi.baidu.com/laoyang1018/blog/item/9c35e82402bc41194c088d20.html
分享到:
相关推荐
"启动页白屏"、"如何判断应用前后台切换"、"透明状态栏"以及"动态切换桌面图标"是开发者经常会遇到的问题,下面将针对这些知识点进行详细讲解。 1. **启动页白屏** 启动页白屏通常是由于应用程序启动时加载资源或...
在Android平台上,开发一个电池电量监控程序涉及到对系统电源状态的实时监测和处理。这个程序可以帮助用户了解设备的电池使用情况,预测电池寿命,并提供优化电池使用效率的建议。以下是一些关键知识点: 1. **...
在Mac OS中,Dock是用户界面的核心部分,它显示了常用的应用程序图标,用户可以通过点击这些图标快速启动或切换应用。此外,Dock还会显示当前活动应用的缩略图,以便用户能快速访问最近使用的任务。 在Android上...
2. **Notification的使用**:Notification是Android中用于在状态栏显示提醒信息的机制。用户即使不在应用中也能接收到应用的通知。在示例代码中,首先获取到NotificationManager,然后设置通知的图标、提示文本、...
5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用ContentResolver 5.10 取得联系人资料——Provider.Contact的使用 5.11 制作有图标的文件资源管理...
5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用ContentResolver 5.10 取得联系人资料——Provider.Contact的使用 5.11 制作有图标的文件资源管理...
5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用ContentResolver 5.10 取得联系人资料——Provider.Contact的使用 5.11 制作有图标的文件资源管理...
7. **状态栏和通知栏的模拟**:在Android中,状态栏和通知栏通常是系统级别的,但为了高仿iPhone,可能需要自定义这部分。这需要使用系统提供的StatusBarManager服务,或者利用第三方库如SystemBarTint库来改变状态...
在Android系统中,下载管理器(Download Manager)是用于处理应用程序和用户下载文件的核心组件。在Android 6.0(Marshmallow)及更高版本中,这个功能被优化并提供了更强大的控制和定制能力。本项目"Android-...
5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用-p178 5.9 搜索手机通讯录自动完成——使用ContentResolver-p82 5.10 取得联系人资料——Provider.Contact的使用 5.11 制作有图标的文件...
Android Launcher源码全面分析涉及了Android桌面启动器(Launcher)的核心功能实现,包括界面配置、图标及壁纸调整、启动和初始化流程、以及一些高级特性如HotSeat和页面滑动处理等。接下来将根据给出的信息点,详细...
5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用ContentResolver 5.10 取得联系人资料——Provider.Contact的使用 5.11 制作有图标的文件资源...
服务可以在后台持续运行,即使用户离开应用程序,也可以保持锁屏功能的响应性。查找源码中定义的Service类,并了解它是如何启动、停止以及与BroadcastReceiver交互的。 3. **权限管理**: 在AndroidManifest.xml文件...
4.17 后台程序运行进度提示 4.18 动态文字排版 4.19 在Activity里显示列表 4.20 以动态列表配置选项 4.21 查找程序根目录下所有文件 4.22 加载手机磁盘里的图片文件 4.23 ...
介绍如何在状态栏中显示自定义的图标和文本消息,提醒用户关注某些事件。 - **5.9 搜索手机通讯录自动完成** 实现通讯录搜索功能,包括自动完成匹配用户输入的部分字符,以快速定位联系人。 - **5.10 取得联系人...
- **判断服务开启状态**: 通过查询正在运行的服务列表(`ActivityManager.getRunningServices()`)来判断。 - **获取启动的服务**: 可以通过`startService()`或`bindService()`来启动或绑定Service。 **3.4 ...