BVt*_*Vtp
5
android
push-notification
对于没有 Google Play 服务的设备,有几个选项可以接收推送通知。这些选项可以是中国的百度、Pushy、Facebook 自己的推送通知等。
但我不明白如何才能克服这两个主要问题:
- 由于我们无法在设备级别拥有某种“SDK”(例如 Google Play 服务),因此我们唯一的选择是将其集成到应用程序级别。这意味着,我们无法像 GCM 那样为所有应用程序建立一个与推送服务器相互连接的套接字连接。相反,我们需要有与安装的应用程序数量一样多的活动套接字连接。
- 即使我们密切关注问题 1,为了使该连接能够在打瞌睡和应用程序待机状态下生存,我们也必须在前台服务中处理它们,这是保证其运行的唯一方法,即使在杀死应用程序之后,或者当设备进入 Doze 状态。但为什么我们在中国手机的通知栏中看不到前台服务的通知,或者使用 Pushy 的应用程序?他们只是定期轮询推送服务器吗?与 AlarmManager (用 setAndAllowWhileIdle 标记)和 BroadcastReceiver ?这将过于耗费资源且效率低下。