notification自定义单击事件

dali_yan 2014-12-15 06:07:35
在自定义notification时候我们都是通过intent来进行跳转的,但是现在我碰到的一个需求,有一个Service在不断的监听APP的数据备份,当有数据备份的时候APP会发送一个通知到状态栏,提醒用户需要数据备份成功。这个时候用户可能会单击这个通知,在单击过程中我有一个逻辑判断,就是:如果当前APP是在前台运行则直接跳转到目标窗口A;但是,如果APP是在后台或者被杀死(注意这个时候会service没有被杀死,仍在后台运行)的时候需要重新进入splashActivity进行APP登录,这里面有个坑的地方就是,你无法去定义notification通知栏的单击事件,而我写的运行的代码是这样的:
/**
* 显示一个状态栏通知
* @param context 发起通知的上下文
* @param notifyId 通知的id
* @param icon 通知的图标
* @param tickerText 当通知第一次显示的时候,显示在状态栏上的文字
* @param contentTitle 展开通知后通知的标题
* @param contentText 展开通知后通知的内容
* @param contentIntent 点击展开的通知时,要启动的Intent
* @param flag 设置通知的标识,比如{@link Notification#FLAG_NO_CLEAR}|{@link Notification#FLAG_NO_CLEAR}
* @param number 事件的数目,比如未读邮件的数目,未读消息的数目
*/
public static void notify(Context context,int notifyId,int icon,CharSequence tickerText,CharSequence contentTitle ,CharSequence contentText,PendingIntent contentIntent,int flag,int number,int defaults){
NotificationManager nm=(NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification=new Notification(icon, tickerText, System.currentTimeMillis());
notification.flags=flag;
notification.number=number;
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);

if(MymoneyPerfencesUtil.getMessageMute() && isOnNight()) {
notification.sound = null;
notification.vibrate = null;
}else{
notification.defaults=defaults;
}

nm.notify(notifyId, notification);
}


我现在想到个办法:
(1)启动一个服务实时监听notification的单击事件,但是比较麻烦


我想问大家,怎么样去解决这个问题,能不能自定义notification的单击事件逻辑。谢谢!
...全文
232 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
postxx 2014-12-26
  • 打赏
  • 举报
回复
发广播是可以触发的
荔枝别闹了 2014-12-16
  • 打赏
  • 举报
回复
我记得发送通知的时候,不是可以定义吗?
 Intent intent=new  Intent(NotificationTest.this,MainActivity.class);
PendingIntent pi=PendingIntent.getActivity(NotificationTest.this, 0,
 intent, 0);
是这个意思吗?可以定义挑战的activity啊

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧