1
LMkillme Nov 5, 2014
极光推送~
iOS上面也不是用通知中心的,用Apns或者极光推送 |
2
fofoone Nov 5, 2014 gcm 别想了,就是没被墙,国产也被阉割。
国内用自己做推送,scoket 长连接 开个service,单机几十万应该不是问题。要不就是第三放推送 极光 小米 umeng 之类 都是长连接实现,省事。 如何保证service一直运行?一般通过注册各种广播事件(BroadcastReceiver)收到广播后检测service和链接状态。已安装未启动看你注册广播的形式。 notification的形式是怎样的?自己下个 demo 看吧。问的太模糊。 |
3
LMkillme Nov 5, 2014 由于安卓的内存管理机制,安卓可以一直存活在后台,只要不被杀死就可以保持socket链接,所以没有推送的问题,在后台也可以通过socket发送消息,但是socket耗电,不是很好的实现方式,用推送方式还是比较好的解决方案。iOS就没办法只能用Apns了
|
7
wangleineo OP @fofoone 一般通过注册各种广播事件(BroadcastReceiver)收到广播后检测service和链接状态。已安装未启动看你注册广播的形式。
不太明白。如果在manifest里面声明了一个service,安装app后这个service就会一直运行? 注册什么广播事件呢?谁来发送事件? |
8
fofoone Nov 5, 2014
@wangleineo
安装app后这个service就会一直运行? 收到广播启动,或者开启应用启动。 什么广播事件?比如,网络状态切换,来电去电,电量状态,系统启动,屏幕打开关闭等。 谁来发?这种一般是系统发。 如果想多个 app 共享长连接,一般会自定义广播,互相唤醒。 |
9
Androilly May 21, 2015
大多数都是通过第三方推送来达成,比较好的是个推推送
|
10
Hxqing Nov 28, 2016
国内的 Android 推送多数是靠第三方推送实现的。
以云巴( Yunba.io )为例,客户端集成了云巴的 Android SDK ,服务端可通过云巴的 SDK 或使用 RESTful API ,向 Android 客户端发消息。 1.后台保持长连接。 Android SDK 会启动一个后台的 Service ,创建并保持到云巴服务器的长连接,从而保证了消息推送的实时性。 2.确保消息的送达。云巴 SDK 支持 离线消息 的功能,可保证消息送达客户端。 楼主上述的问题,或许下个 Demo 试试看就能解决~ Android : https://yunba.io/docs/android_demo_quick_start iOS : https://yunba.io/docs/ios_demo_quick_start |