【发布时间】:2011-01-11 19:41:16
【问题描述】:
根据this,Android C2DM 通过心跳机制保持套接字处于活动状态,使其能够接收推送消息。这让我希望我可以通过有效的 wifi 连接向正在睡觉的手机发送消息。
我已经将“delay_while_idle”设置为“0”。如果我的手机屏幕关闭,则消息会发送,但如果手机进入睡眠状态则不会发送(测试间隔为 20 分钟,1-6 小时)。
为了以防万一,我已经获得了部分 cpu 锁 + 完整的 wifi 锁。
我只是犯了根本性的错误,还是我误解了 C2DM 推送功能?
我可以向睡眠中的手机发送消息吗?
【问题讨论】:
-
您可以向睡眠电话发送消息,是的,但有一些问题和注意事项。确保您在接收器中获得了唤醒锁定,并查看此线程以获取更多信息:groups.google.com/group/android-c2dm/browse_thread/thread/…
-
这似乎是解决方案:“所有,我认为 android 2.3 将允许开发人员解决这个问题。我是 SIP 应用程序的作者(CSipSimple - 在 googlecode 上搜索;)) . 阅读 Android 2.3 SIP stock application 的源代码,我注意到他们使用了一种新型 wifi lock .... 它是:WifiManager.WIFI_MODE_FULL_HIGH_PERF (int 3)。"
-
您是否尝试过更改 Wi-Fi 睡眠策略?
标签: android android-c2dm