android怎么判断程序在后台运行,让后将程序图标显示在状态栏
2011-12-30 11:46
731 查看
根据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
或者,只要程序在运行就一直显示通知栏图标,这样简单点。
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
相关文章推荐
- android怎么判断程序在后台运行,让后将程序图标显示在状态栏
- android怎么判断程序在后台运行,让后将程序图标显示在状态栏
- android怎么判断程序在后台运行,让后台将程序图标显示在状态栏上?
- android下录音后台将程序图标显示在状态栏上
- 判断Android程序是否在后台中运行
- Android Service全解(三)之 Foreground Service(怎么让Android程序一直后台运行,像QQ一样不被杀死?)
- android 优雅的判断程序是否在后台运行
- Android之通过ActivityLifecycleCallbacks判断程序是否运行在后台
- android让后将程序图标显示在状态栏
- Android 判断程序在前台运行还是后台运行
- Android如何判断程序是在前台还是在后台运行
- android 状态栏显示运行图标
- 怎么让 Android 程序一直后台运行,像 QQ 一样不被杀死?
- 怎么让 Android 程序一直后台运行
- C#之使用NotifyIcon实现任务栏托盘菜单,图标闪烁效果及气泡提示 很多程序是只需要后台运行的,甚至不需要自己的应用界面。NotifyIcon提供了程序在任务栏的显示功能 程序下载链接如下
- 怎么让 Android 程序一直后台运行,像 QQ 一样不被杀死
- Android之判断程序在前台运行还是后台运行
- 判断Android程序前后台切换的几种方法
- Android 判断程序是不是第一次运行
- 解决Android程序运行且退出后却不会显示在近期任务里的问题