导航:首页 > IDC知识 > 安卓ios推送服务器

安卓ios推送服务器

发布时间:2020-12-20 07:38:18

1、安卓手机如何实现像ios系统一样的推送功能??

推送功能来自服务器。和手机并没有关系。所以手机如何让设置都没用。

2、ios和android的后台推送工作原理各是如何?有什么区别

iOS 系统的推送(APNS,即 Apple Push Notification Service)依托一个或几个系统常驻进程运作,是全局的(接管所有应用的消息推送),所以可看作是独立于应用之外,而且是设备和苹果服务器之间的通讯,而非应用的提供商服务器。你的例子里面,腾讯 QQ 的服务器(Provider)会给苹果公司对应的服务器(APNs)发出通知,然后再中转传送到你的设备(Devices)之上。当你接收到通知,打开应用,才开始从腾讯服务器接收数据,跟你之前看到通知里内容一样,但却是经由两个不同的通道而来。

而 Android,就不同,更像是传统桌面电脑系统做法。每个需要后台推送的应用有各自的单独后台进程,才能和各自的服务器通讯,交换数据。另外其实 Android 也有类似 APNS 的 GCM(Google Cloud Message),属于开发者可选,非强制。(更多请看本回答评论区里面 @Bill Cheng 的补充)

所以你大概看出来区别,iOS 的消息推送机制面世之时是一种全新的解决方案(堪称平台中的平台),应用本身不能有常驻的后台进程,系统的开销少,内存使用更少,电量也更少(把更多的运算和资源开销放在云端,非设备端)。而 Android 的特点,虽然开销大,优点是更稳定快速,但不明显。

3、如何实现安卓和苹果手机APP信息推送?

百度云,dropbox,此外就是来应用自己自的服务器进行数据同步了,比如奇妙清单注册账号,PC IOS ANDROID 都能同步。
只看了标题,,,你这个问题还是去开发者社区问靠谱点!分类推送捕获用户数据保存在服务器,匹配了数据自动推送。

4、iOS 和 Android 的后台推送原理各是什么?有什么区别

iOS 和 Android 的后台推送原理各是什么?有什么区别?2013-12-11 17:42| 发布者: zouqun |原作者: 李楠|来自: 知乎摘要: iOS 的推送iOS 在系统级别有一个推送服务程序使用 5223 端口。使用这个端口的协议源于 Jabber 后来发展为 XMPP ,被用于 Gtalk 等 IM 软件中。所以, iOS 的推送,可以不严谨的理解为:苹果服务器朝手机后台挂的一个 ...iOS 的推送
iOS 在系统级别有一个推送服务程序使用 5223 端口。使用这个端口的协议源于 Jabber 后来发展为 XMPP ,被用于 Gtalk 等 IM 软件中。所以, iOS 的推送,可以不严谨的理解为:
苹果服务器朝手机后台挂的一个 IM 服务程序发送的消息。
然后,系统根据该 IM 消息识别告诉哪个 Apps 具体发生了什么事。
然后,系统分别通知这些 Apps 。应该说,苹果这种方式在技术上没有什么创新。但是,整个架构是很了不起的。 因为:
1 使用久经考验的协议,技术风险小。
2 苹果勇于承担责任:
他需要维护一个代价不小的服务器集群,而且要为服务器的 down 机负责。

选择低风险的技术方案 Bug 更少,减轻了用户的痛苦,这是构架师的功劳。
苹果承担责任,尽可能的减少了不可控的意外,保证了用户体验。
这,只能说是公司决策者的功劳。
(从侧面说明有个懂技术的 VP 是多重要。。。而 Scott 走人了。。)

他们带给用户的好处也是实实在在的。
1 安全。
只有登录过的开发者可以通过苹果的服务器推送。

2 快速,稳定,可靠。
苹果掌控推送服务器和 OS 。

3 更省电。

4 让整个系统的体验更统一和简单。
不会出现杀后台这种脑残事。(不用大量 Apps / Apps 的服务为了推送挂后台)。
也不会出现 Apps 被杀就收不到推送这种脑残事(早一点的新浪微博 Android 版仍然如此)。

5 开发容易。
当然,开发者还是要做些事情,比如维护个服务器什么的: http://www.ifanr.com/3979。但是复杂度无疑降低很多了。

Android 的推送
Apps 挂后台一直是 Android 引以为豪的特性(虽然我真的不知道是好处多还是坏处多。。)。。。大家挂后台等待推送就成为技术选择。

当然, Google 事后也提供类似苹果的推送方式了。倒也谈不上抄袭,毕竟苹果的整个技术实现也没有什么特别创新之处。

用户的电池?

Apps 的开发者不会站在系统层面考虑的。他会假设其他 Apps 没有那么“不自觉”。而 Google 不强制的结果就是:没人真正为用户的电池负责。

但是, Google 的方案也并非全是悲剧:
也因为整个技术方案非强制, Android 的 Apps 在接收到推送后的表现更为灵活。
像 Line 的 Android 版本可以在推送通知的 Popup 上直接回复, iOS 就需要越狱才能做到了。

最后的话
强制和封闭,有时候并非坏事。他意味着做出这个决定的人,要为此负责。

所以,如果说苹果的推送方案有何创新?

我以为是超越技术,不惜让公司承担更多风险和责任的解决方案。(类似的还有 BB 的专用网络, Kindle 的全球 3G )

个人相信,担负起这些“额外”的责任,是值得的。。

5、你好 Spring mvc java服务器ios android推送的 你最终怎么实现的。

使用Socket,参考netty等socket框架。Ios和Android稍有区别,Android下App可以同样使用netty等或者直接使用原生专Socket与服务器简历Socket连接,IOS下代码差属不多,不过需要去苹果申请一些乱七八糟的东西,Socket会由苹果服务器转发。

6、为什么 Android 的后台推送不如 iOS 的推送使用广泛

Google 有提供类似的推送系统叫 C2DM,要求是要Android2.2以上,必须有安装Google Play并且有Gmail帐号登录。第一个条件专现在大部属分Android 手机都可以满足,第二个条件国内所有行货基本都不满足,刷过第三方ROM的手机也都大部分把Google的服务给阉割掉了。即便满足前面两个条件,在我们国家,Google的服务器也会抽风。

7、ios 推送是建立在 苹果推送服务器吗

方法/步骤

在developer.apple.com的member center设置AppId属性,
enable push.

在developer.apple.com的member center创建APN证书,
Development -> Apple Push Notification service SSL (Sandbox) 用于沙盒app
Proction -> Apple Push Notification service SSL 用于AppStore app
创建完毕后,可以第一步AppId的属性列表中查看到证书名称

基于第1步修改的AppID重新生成provision file,
在iOS Project中加载此provision file,
这样编译出的app才可以获取到device token(推送唯一标识符)

以下为针对服务端的推送设置步骤--------
在keychain中找到第1步创建的APN证书,
展开此证书,分别导出证书和密钥,
名称设为cer.p12和key.p12

打开控制台程序,
使用openssl 将cer.p12及key.p12转成cer.pem和key.pem
命令如下:
$ openssl pkcs12 -clcerts -nokeys -out cer.pem -in cer.p12
$ openssl pkcs12 -nocerts -out key.pem -in key.p12
测试生成的cer.pem及key.pem是否可用
$ openssl s_client -connect gateway.push.apple.com:2195 -cert cer.pem -key key.pem
注:gateway.push.apple.com:2195用于appStore app;
gateway.sandbox.push.apple.com:2195用于沙盒app;
以上命令执行后会打印一大罗信息,最后处于可输入状态,打几个字符回车后自动断开连接即为正常。
合并cer.pem及key.pem
$ cat cer.pem key.pem > ck.pem
上传ck.pem到推送服务器的推送程序的目录。
Tip:-----------------------
find / -name "*.php"
查询推送服务器php文件目录用。
scp ~/Desktop/ck.pem [email protected]:/var/www/html
用于上传本地文件到Linux服务器用。
9
服务器php代码加载ck.pem向苹果服务器推送消息:略
客户端oc代码获取token,接收推送消息:略

8、iOS 和 Android 的后台推送工作原理各是如何?有什么区别?


2). 循环主动定时获取
这种方法需要客户端来做一个定时或者周期性的访问服务回器端接口,答以获得最新的消息。显然这种方法有两个弊端,一个是客户端对电池的消耗显而易见,另一个是消息的获取不够及时,如果是地震消息(大家笑了吧)。
3).长连接方式
这种方案和Google的C2DM的方案是一样的,同时大名鼎鼎的苹果用的也是这样的机制。这种机制的弊端也是显而易见的:我们需要开一个服务来保持和服务器端的持久连接。But ANdroid系统的特点我也不说了。当系统可用资源较低,系统会强制关闭我们的服务或者是应用,这样的话我们的连接中断就悲剧了。

9、iOS 除了官方的推送服务,有其他的第三方服务吗

实际上安卓也抄就是google是有像苹果APNS的推送服务器的,但是在国内没有服务器。
如果你的应用走后台进程一直连接服务器,将会非常耗电,如果还非常耗流量,那你的应用会被用户咔嚓掉。
安卓现在缺少一个整合的推送服务。像ios一样,专门的推送进程与苹果官方推送服务器连接。如果安卓各个应用都连接各自自己的推送服务器,不好管控,也非常费流量,实际上都是伪推送。
哦对你说的极光推送是个第三方,口碑还不错,你可以试一试,也可以减轻自己的研发负担。

10、求问 ios的推送怎么写 有个思路就好了,安卓有service, ios用什么的?怎么维持通信?

推送分两种情况:
1. app 外推送,再分为 app 在后台或不在后台。如果不在后台,版这种情况是服务器权直接推到苹果的服务器上,app 本身不需要做什么。如果通过某个通知打开 app 的时候,app 是可以拿到该通知的内容的;如果 app 在后台,且系统是 iOS 7,支持静默通知,那么将由你的 app 直接收到该通知,并且可以自己发出一个本地通知。

2. app 内推送,服务器还是可以直接推到苹果的服务器上,虽然不会显示通知,但是 UIApplication 的 delegate 可以收到通知

与安卓ios推送服务器相关的知识