应用在通知栏推送的消息,ios 点击推送消息跳转怎么不打开应用了

iOS 问题:ios推送,程序没运行的时候,推送是苹果自动处理的,如果我从下拉列表的通知中,点击进入程序,我怎么获取到通知的数据,并且是会进入哪个方法里面???我看网易的从里面点击进去,就直接跳转到内容详情里面,而且点击完以后,通知下拉列表里面当条通知就消失了,这是怎么弄的啊,求大神帮忙解答啊,我弄的推送,在程序没运行起来,就没进入那个接收方法里面,通过看其他应用,在程序没运行的时候,是不是还有其他方法获取推送通知中心的数据,然后在方法里面跳转视图,急求啊!!!谢谢~~@@ -
ios推送,程序没运行的时候,推送是苹果自动处理的,如果我从下拉列表的通知中,点击进入程序,我怎么获取到通知的数据,并且是会进入哪个方法里面???我看网易的从里面点击进去,就直接跳转到内容详情里面,而且点击完以后,通知下拉列表里面当条通知就消失了,这是怎么弄的啊,求大神帮忙解答啊,我弄的推送,在程序没运行起来,就没进入那个接收方法里面,通过看其他应用,在程序没运行的时候,是不是还有其他方法获取推送通知中心的数据,然后在方法里面跳转视图,急求啊!!!谢谢~~@@
共有 4 个回答
上面那个我已经找到方法了,直接在didfinsh方法里面判断,&br /& 还有个问题,。。。&br /&当app不在前台的时候,推送消息是放到系统的通知面板里,如果有多条消息 ,点击其中一条消息启动程序后如何删除掉点击的那条消息呢?&br /&&br /&目前我只知道可以通知&br /&&br /&[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; &br /&&br /&把所有消息删除 但是这样我就只是获取到了其中一
登录后方可回复
有莫有解决啊
登录后方可回复
同问此问题,我要实现的效果和你的一样,请问是如何实现的,谢谢
登录后方可回复
楼主解决了没~~ 求分享啊~~
登录后方可回复
登录后方可回答ios 如何判断是点击推送信息进入还是点击app图标进入程序-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
ios 如何判断是点击推送信息进入还是点击app图标进入程序
来源:互联网 发表时间: 11:35:44 责任编辑:鲁晓倩字体:
为了帮助网友解决“ios 如何判断是点击推送信息进入还是点击app图标进入程序”相关的问题,中国学网通过互联网对“ios 如何判断是点击推送信息进入还是点击app图标进入程序”相关的解决方案进行了整理,用户详细问题包括:RT,我想知道:ios 如何判断是点击推送信息进入还是点击app图标进入程序,具体解决方案如下:解决方案1:会调用didFinishLaunchingWithOptions,则上面两个方法都不会被调用这时,不会调用didReceiveRemoteNotification方法. 应用在前台(foreground)这时如果收到通知设备接到apns发来的通知,只能在applicationWillEnterForeground或者applicationDidBecomeActive。3,再点击应用,只会调用didFinishLaunchingWithOptions方法,根据发过来通知中的badge进行判断是否有通知,会调用didReceiveRemoteNotification方法:1,应用处理通知有以下几种情况。2. 应用还没有加载这时如果点击通知的显示按钮。(2)点击关闭再点击应用。如果点击通知的关闭按钮,会触发didReceiveRemoteNotification方法,点击显示按钮.应用在后台(1)此时如果收到通知
1个回答1个回答2个回答1个回答4个回答9个回答1个回答1个回答2个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号经验308 米
在线时间5 小时
版本6.11.3
积分 252, 距离下一级还需 248 积分
积分 252, 距离下一级还需 248 积分
机型红米Note 3-全网通版
签到次数29
MIUI版本6.11.3
来自网页版
点击通知栏推送的消息,不能直接打开应用,有没有跟我一样的,昨天反馈,没人理我,今天还是这个毛病!
点击通知栏推送的消息,不能直接打开应用,有没有跟我一样的,昨天反馈,没人理我,今天还是这个毛病!直接显示手机桌面,而不是进入到这条信息的详情页面!不知道怎么上传LOG文件
本帖最后由 秋思不解 于
17:31 编辑
遇到的人越多,MIUI开发组会越关注
分享到微信朋友圈
打开微信,点击底部的“发现”,使用 “扫一扫” 即可将网页分享到我的朋友圈。
经验10098 米
在线时间710 小时
版本7.1.13
机型小米手机5
签到次数88
MIUI版本7.1.13
来自网页版
请楼主帮忙抓取一下log文件
经验1477 米
在线时间5 小时
版本7.1.12
机型小米Max 标准版
签到次数29
MIUI版本7.1.12
恢复一下出厂设置
在线时间3 小时
积分 80, 距离下一级还需 120 积分
积分 80, 距离下一级还需 120 积分
机型红米Note3 全网通
MIUI版本6.9.9
同样问题,你的解决了没有?
经验274 米
在线时间5 小时
版本6.12.8
积分 289, 距离下一级还需 211 积分
积分 289, 距离下一级还需 211 积分
机型小米Max 高配版
签到次数21
MIUI版本6.12.8
开发版我的也有
经验1206 米
在线时间1 小时
版本V8.1.5.0.MBCCNDI
积分 1383, 距离下一级还需 617 积分
积分 1383, 距离下一级还需 617 积分
机型小米Max 标准版
MIUI版本V8.1.5.0.MBCCNDI
我的稳定版,也有同样问题。
经验1413 米
在线时间15 小时
版本7.1.12
积分 1492, 距离下一级还需 508 积分
积分 1492, 距离下一级还需 508 积分
机型小米手机5
签到次数39
MIUI版本7.1.12
同样有这个问题,真是服了miui8
经验3160 米
在线时间18 小时
版本V8.1.9.0.NAACNDL
机型小米手机5
签到次数26
MIUI版本V8.1.9.0.NAACNDL
米5,同样,稳定版
经验307 米
在线时间9 小时
版本6.11.10
积分 328, 距离下一级还需 172 积分
积分 328, 距离下一级还需 172 积分
机型小米手机5
签到次数25
MIUI版本6.11.10
来自网页版
不用太感谢寡人,一座城池就够了。猛击链接:
灵魂画手勋章
参与灵魂画手活动
2017年小金鸡勋章
回复2016年度评选活动贴
圣诞节勋章
参与圣诞活动
APP 1000万
MIUI论坛APP注册用户突破1000万纪念勋章
MIUI 300周
MIUI 300周更新纪念勋章
为奥运加油勋章
为奥运加油勋章
MIUI 7纪念勋章
参加流量购买活动
已关注微信
已关注极客秀微信
关注腾讯微博
已关注腾讯微博
关注新浪微博
已关注新浪微博
MIUI六周年
MIUI六周年纪念勋章
小火箭勋章
神舟11号 话题活动
Copyright (C) 2016 MIUI
京ICP备号 | 京公网安备34号 | 京ICP证110507号1623人阅读
android技术分享(9)
让Android点击通知栏信息后返回正在运行的程序,并完全退出所有activity最近发现开发中的应用在home键关闭后,从通知栏重新打开后无法用退出按钮关闭应用,在网上查了n久后,发现一些关键的原因,还没实中践测试,先做下笔记。& & 首先,其中一个原因可能是从通知栏打开应用是新开activity并且是存在一个新的task堆里的,这种情况下使用restartpackage()方法不能关闭应用的所有activity,解决的办法可以强制从通知栏打开应用时回来原activity或者能关闭所有task里的 activity& & & 方法二试过,不过不知如何取出所有activity,task也不知如何清除。方法一现在想想应该推荐这种方法,找到的方法资料先贴上:如果要实现点击通知图标返回已经运行的程序,贴出关键的部分代码。
public void shownotification(String msg)
NotificationManager barmanager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Notification notice = new Notification(android.R.drawable.stat_notify_chat,&服务器发来信息了&,System.currentTimeMillis());
notice.flags=Notification.FLAG_AUTO_CANCEL;
Intent appIntent = new Intent(Intent.ACTION_MAIN);
//appIntent.setAction(Intent.ACTION_MAIN);
appIntent.addCategory(Intent.CATEGORY_LAUNCHER);
appIntent.setComponent(new ComponentName(this.getPackageName(), this.getPackageName() + &.& + this.getLocalClassName()));
appIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);//关键的一步,设置启动模式
PendingIntent contentIntent =PendingIntent.getActivity(this, 0,appIntent,0);
notice.setLatestEventInfo(this,&通知&,&信息:&+msg, contentIntent);
barmanager.notify(STATUS_BAR_ID,notice);
通过上面的代码你可以实现上面的功能了
但是另一位博主实现这个的时候有一个问题,我没有测试过
((( 在真测试时会遇到一个问题:当你安装包在手机上安装时(不是连接在电脑上用Run As运行的), 安装完成后点击 【打开】按钮进入程序后,再点击通知栏上的图标,就会导致运行一个新的Activity,而且原来运行的Activity也在运行。
这种问题只会出现在第一次安装后立即运行时,但是覆盖安装并不会有这样的情况。我也还找不到办法解决,如果有朋友解决了 分享下。)))
不知道这个问题怎么解决
有网友说“再加一个模式吧。Intent.FLAG_ACTIVITY_CLEAR_TOP“,我没有测试过
不知道可行否另外这里可能也要设置一下比较好:
这里需要在配置文件中设置每个Activity以单任务运行,否则,每次返回原Activity时会新增加一个Activity,而不会返回到原Activity。
  在使用FLAG_ACTIVITY_NEW_TASK控制标识时也会出现不会返回到原Activity的现象。如果该标识使一个Activity开始了一个新的Task,然后当用户按了HOME键离开这个Activity,在用户按下BACK键时将无法再返回到原Activity。一些应用(例如Notification)总是在一个新的Task里打开Activity,而从来不在自己的Task中打开,所以它们总是将包含FLAG_ACTIVITY_NEW_TASK的Intent传递给startActivity()。所以如果有一个可以被其他的东西以这个控制标志调用的Activity,请注意让应用程序有独立的回到原Activity的方法。 代码如下:
&activity android:name=&ShowMessageActivity&
android:launchMode=&singleTask&&&/activity&
  这里需要注意的是:
  &activity&下的launchMode属性可以设置四种启动方式:
standard (默认模式)
singleTask
singleInstance
更详细看原博文是
先贴上,明天实践测试后贴上实际实现方法。
&在网上找来找去,找到的文章好像说的挺难的样子,以上的方法经测试是没用的,然后我仔细翻了各flag标记,发现这条Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY让我眼前一亮,不过经过测试我也不清楚管不管用,因为我的需求并不是为了显示它,而是因为我的应用在关闭时遇到了问题:关闭后重新打开还会进入历史activity上。
& 其实如果没有特别的需要,什么flag都不加也可以,我的需求是因为程序有退出按钮,要将应用完全退出,也是挺麻烦的,经过多种方法n次测试发现在api level8以下只能用activityManager.restartPackage(packname)关闭,在android4.x系统发现这种方法不行,官方文档也已抛弃这个方法改成actManager.killBackgroundProcesses,不过如果你想兼容各版本,就不能用这个方法了,后来我想用home键功能返回主界面,方法:
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET); //这是我加的,我以为这样可以清掉所有历史activity
ntent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
测试的结果却是:从通知栏打开应用后这种退出方法并不能退出所有历史activity,所以从通知栏打开应用可以说它也是新建了task的,而Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET也没有起到我想的作用,或者说它只清了当前的task,因为当我把通知栏打开的activity设为android:launchMode=&singleTask&(AndroidManifest.xml上)时,退出后它似乎清除了所有activity,就是说通知栏打开应用时它没有新建task了?反正功能是达到了我的需求,看来貌似通知栏打开应用会默认新建task的流程是不能改的,只能改它打开的activity的特性
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:15209次
排名:千里之外
原创:19篇
(1)(1)(2)(1)(5)(3)(7)(2)

我要回帖

更多关于 ios 点击推送消息闪退 的文章

 

随机推荐