iOS 和 Android
iOS 和 Android 的后台推送工作原理各是如何?有什么区别么?
[解决办法]
不知道 这两个都是后台运行的么
[解决办法]
个人理解为:
iOS 系统的推送(APNS,即 Apple Push Notification Service)依托一个或几个系统常驻进程运作,是全局的(接管所有应用的消息推送),所以可看作是独立于应用之外,而且是设备和苹果服务器之间的通讯,而非应用的提供商服务器。
而 Android,就不同,更像是传统桌面电脑系统做法。每个需要后台推送的应用有各自的单独后台进程,才能和各自的服务器通讯,交换数据。另外其实 Android 也有类似 APNS 的 GCM(Google Cloud Message),属于开发者可选,非强制。
所以你大概看出来区别,iOS 应用本身不能有常驻的后台进程,系统的开销少,内存使用更少,电量也更少(把更多的运算和资源开销放在云端,非设备端)。而 Android 的特点,虽然开销大,优点是更稳定快速,国内外也有第三方的Android推送解决方案,优化的比较好的有:PubNub, 个推,Urban Airship等。