android删除通知栏图标,Android开发系列---UI篇---添加和消除通知栏图标

在android的app开发中,在退出程序时,会保留部分服务,因此在顶部的通知栏留下一个图标,用户通过点击图标可以快捷访问应用程序。例如360、腾讯qq等。

一、创建通知栏图标

NotificationManager mNM = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

CharSequence text = getText(R.string.name);

//设置图标Notification notification = new Notification(R.drawable.icon, text, System.currentTimeMillis());

//设置图标是否能被系统清理掉notification.flags = notification.flags | Notification.FLAG_NO_CLEAR;

//绑定intent,主要作用就是点击图标时能够进入程序PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(this, MyActivity.class), 0);

notification.setLatestEventInfo(this, getText(R.string.name), text, contentIntent);

//发送通知mNM.notify(R.string.name, notification);

notification.flags有多种设置值,主要有Notification.FLAG_AUTO_CANCEL(可以被系统清理掉)、Notification.FLAG_ONGOING_EVENT(设置正在运行)等。

二、代码中清除通知栏图标

有时候,我们在代码里设置了Notification.FLAG_NO_CLEAR,这样的通知栏图标我们通过系统是无法clear掉的,这样就可能会让用户很烦躁,当然有些可以通过第三方软件强制清除。为了提供用户体验性,我们可以在退出时提示用户,是否要在后台继续运行程序或服务。下面看代码,仅仅是清除通知栏图标代码:

NotificationManager notificationManager = (NotificationManager) MainActivity.this

.getSystemService(NOTIFICATION_SERVICE);

notificationManager.cancel(R.string.name);//此处的R.string.name就是我们在发送通知时,设置的通知id

就这样。

因为经验尚浅,其实我写博文的主要目的是,为了让自己以后能够拿来主义。所以很多不足之处,敬请谅解。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值