【转】手机应用为什么明明已经退出,还会收到推送的消息?

手机应用为什么明明已经退出,还会收到推送的消息?

是像电脑一样,应用退出后还会有某些残留程序未关闭吗?该如何完全关闭残留程序?

对于andriod用户来说经常有这种困扰,掏出你的手机,进入应用程序管理,杀掉所有应用,然后去泡杯茶,回来再看看你的手机你会神奇地发现,刚刚杀掉的应用很多都自己复活了,一个个的还活蹦乱跳的,时不时给你推送几条消息。其实andriod应用有几种复活方式:

监听系统事件:Android系统有一套广播机制,当系统发生了某件事的时候,它会通知给需要知道这件事情的所有应用。这套机制对于良心应用来说,就是可以根据系统当前的状态,给用户带来更好体验。但是,对于某些别有用心的应用,它就利用这套机制,钻个小空子了,明明用户已经退出它了,它仍旧把自己唤醒,静静地躺在后台。

守护进程唤醒:大部分复活的应用都只学会了第一式,还有另外一种方式就是:很多应用在启动后,还会创建一个守护进程,就像是最开始的恋爱形式一样,中间需要有一个媒人的存在,时不时的问问你们相处的怎么样了,有没有什么矛盾,要是出现了什么问题,他就给你们解决和协调,挽回你们这段感情。

大部分的复活差不多都是采用的第一种形式,不过不同的消息推送技术还是有所不同,其中关于消息推送做得比较好的有友盟推送,我们app现在就是用的友盟推送,他的稳定性和到达率还是很不错的。

在iOS中,你收到的推送消息和应用程序是否关闭没有关系。如果不想收到应用的推送消息,只需要去设置中的通知中,找到这个应用,取消接受他的通知就可以了。

在iOS中的通知系统是苹果的服务器发送给iOS设备的,如果你第一次打开应用程序时同意接受通知,那么苹果就会在服务器上注册这台设备的通知ID,并且应用的服务器也会收到通知ID。当应用要发通知时,是应用的服务器发消息给苹果服务器,然后苹果服务器发消息给设备,跟你的应用是否打开没关系。

iOS另一种通知是本地通知,也就是不需要服务器发消息,而是本地根据应用设定好的条件给你发送通知,最常见就是当你几天没打开应用,给你一个通知说什么想你了让你打开之类的。

在Android中,也有类似iOS的推送系统。但是Android应用的权限比iOS大很多,确实存在有些流氓应用你根本就关不掉他的情况,只能用一些第三方反流氓应用去对付流氓应用。但是,能干的过流氓应用的反流氓应用其实更流氓。。。所谓“流氓会武术,谁也挡不住”。。。

from:https://www.zhihu.com/question/20366585

from:https://www.zhihu.com/question/24938934/answer/79382621

时间: 2024-10-14 05:03:13

【转】手机应用为什么明明已经退出,还会收到推送的消息?的相关文章

解决激光推送手机运行时内存杀死进程依然能收到推送

} if (ACTION_BOOT.equals(intent.getAction())||ACTION_NET_CHANGE.equals(intent.getAction())){ Intent service = new Intent(context,DownloadService.class); context.startService(service); Intent pSrvice = new Intent(context,PushService.class); context.st

Android 退出app,后台推送的服务也停止了,怎么可以做到不停止后台服务呢?

service粘性等的那4种方式试了,三星的可以,小米老款手机可以,新款不行,华为新款也不行,还有魅族什么的,都不行,新款的手机上都有一个安全中心,只有在安全中心里面添加上允许app自启动才可以 怎么破? 1.用jpush的这个问题就没得破了 能做的措施他们都做了 定制的rom会有这个问题 没得破 如果公司有钱可以去找手机厂家商务谈 开通白名单 就不会杀你们了 2.解决思路: 设置权限最高 service设置独立进程 service启动后设置保持前台运行 两个service互发心跳保持不死 利用

百度云推送的Service在启动的时候自己退出了

============问题描述============ 大家好,我在使用百度云推送SDK的时候发现在AVD中可以正常收到推送通知,而在手机上却没办法收到. 在Logcat中发现这么一句 shouldStopSelf-------localPriority = 360;  other packageName = com.push.test--priority =384 从Logcat的其他信息来看百度云推送的Service自己退出了,请问各位这是什么原因导致的 ============解决方案1

手机游戏消息推送使用浅析

--WeCloud 团队 消息推送是游戏开发者与玩家沟通最直接的桥梁,开发者可以通过推送一条消息直观地在手机屏幕上把信息传达给玩家.但是由于开发者一些不恰当推送或者对于推送细节的疏忽大意,使得大多数的玩家都选择了彻底关闭推送消息,开发者其实可以做的更好. 如何让消息推送价值最大化应当结合三个问题进行讨论:一.推什么  二. 推给谁  三.怎么推 一.推什么? 第一个关键的点就是推送的内容,作为一个游戏,频繁地广告以及与游戏类型不符合的消息显然是不讨喜的.那么针对不同类型的游戏,选择什么类型的推送

手机Android音视频采集与直播推送,实现单兵、移动监控类应用

恰逢2014 Google I/O大会,不难看出安卓在Google的推进以及本身的开放性作用下,已经快延生到生活的各个方面了,从安卓智能手机.平板,到可穿戴的Android Ware.眼镜.手表.再到Android汽车.智能家居.电视,甚至最近看新闻,日本出的几款机器人都是Android系统的,再把目光放回监控行业,传统监控中的移动终端设备,例如:单兵设备.手持设备.车载终端设备,包括家庭监控中用到的智能设备,都可以用Android系统替代了,不仅开发容易,而且易扩展,设备也更加智能了. 图 -

Jpush之如何利用HttpClient实现消息推送到手机

开心一笑 [1.再逼我,再逼我就装死给你看. 2.打死我也不说,你还没使美人儿计呢. 3.帅有个P用?搞不好还不是被卒子给吃掉. 4.别紧张,我不是什么好人. 5.够不着吧,左脚踩右脚上试试. 只为逗你一笑] 提出问题 后端如何利用Jpush极光推送消息到手机端??? 解决问题 Jpush极光文档官网 http://docs.jiguang.cn/jpush/guideline/intro/ Jpush产品简介 JPush是经过考验的大规模APP推送平台,每天推送消息数超过5亿条. 开发者集成S

Win10 RedStone 2预览版优先向PC推送,手机版稍后

此前win10之家报道过预计微软最快将在本周推送首个Win10 RedStone预览版,在发布新的Win10预览版之前,微软今天提醒Insider检查<反馈中心>中的设置,同时微软还表示新的Win10预览版将首先面向PC推送,手机设备还需要等待几周时间. 微软称目前Win10一周年更新Build 14393已经向消费者推出,已经替代此前的Win10 10586系统,现在将再次在快速通道开启新的预览版测试,就像之前Win10 10586测试开始那样,将首先针对PC设备,Win10 Mobile手

【WP 8.1开发】手机客户端应用接收推送通知

上一篇文章中,已经完成了用于发送通知的服务器端,接下来我们就用这个服务端来测试一下. 在开始测试之前,我们要做一个接收通知的WP应用. 1.启动VS Express for Windows,新建项目,在项目模板中选择“空白应用程序(Windows Phone)”. 2.既然要接收通知,肯定少不了Toast.磁贴这几样常用的通知的,故我们得先准备一些图片. 在“解决方案资源管理器”中,双击打开清单文件,切换到“可见资产”选项卡,这个“资产”指的不你的银行卡存款有多少,而是你的应用中的一些如图片.音

用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)

这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送的官方API以及帮助文档都在这里:http://docs.jpush.cn/display/dev/Index 其中服务端的接口以及示例代码都在这里:http://docs.jpush.cn/display/dev/Server-SDKs 大家有兴趣的可以看看,因为这次我做的不是客户端APP,所以一