1
LMkillme 2014 年 11 月 5 日
极光推送~
iOS上面也不是用通知中心的,用Apns或者极光推送 |
2
fofoone 2014 年 11 月 5 日 gcm 别想了,就是没被墙,国产也被阉割。
国内用自己做推送,scoket 长连接 开个service,单机几十万应该不是问题。要不就是第三放推送 极光 小米 umeng 之类 都是长连接实现,省事。 如何保证service一直运行?一般通过注册各种广播事件(BroadcastReceiver)收到广播后检测service和链接状态。已安装未启动看你注册广播的形式。 notification的形式是怎样的?自己下个 demo 看吧。问的太模糊。 |
3
LMkillme 2014 年 11 月 5 日 由于安卓的内存管理机制,安卓可以一直存活在后台,只要不被杀死就可以保持socket链接,所以没有推送的问题,在后台也可以通过socket发送消息,但是socket耗电,不是很好的实现方式,用推送方式还是比较好的解决方案。iOS就没办法只能用Apns了
|
7
wangleineo OP @fofoone 一般通过注册各种广播事件(BroadcastReceiver)收到广播后检测service和链接状态。已安装未启动看你注册广播的形式。
不太明白。如果在manifest里面声明了一个service,安装app后这个service就会一直运行? 注册什么广播事件呢?谁来发送事件? |
8
fofoone 2014 年 11 月 5 日
@wangleineo
安装app后这个service就会一直运行? 收到广播启动,或者开启应用启动。 什么广播事件?比如,网络状态切换,来电去电,电量状态,系统启动,屏幕打开关闭等。 谁来发?这种一般是系统发。 如果想多个 app 共享长连接,一般会自定义广播,互相唤醒。 |
9
Androilly 2015 年 5 月 21 日
大多数都是通过第三方推送来达成,比较好的是个推推送
|
10
Hxqing 2016 年 11 月 28 日
国内的 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 |