Способы угадать, подключен ли C2DM

Я пытаюсь дать наиболее точную оценку того, могут ли быть получены сообщения C2DM.

Я создал приложение, которое полагается на отправку информации на телефон, когда он физически недоступен. Я понимаю, что доставка C2DM не гарантируется, но я бы хотя бы хотел знать, когда доставка сообщения вообще возможна; когда это не так, мы возвращаемся к нашей собственной push-службе (и действительно можем определить, когда мы подключены).

Я заметил, что C2DM на Android по-прежнему будет выдавать токены аутентификации, даже если нет зарегистрированной учетной записи Google; сообщения по-прежнему доставляются в этом случае, хотя заявлено, что этого не должно быть. Если GTalk не подключен (брандмауэр или по другим причинам), при запросе токена аутентификации никакой ответ не возвращается. Токены аутентификации возвращаются приложению, когда телефон находится в режиме полета. Это означает, что это не так просто, как проверить, доступен ли Интернет. Я не могу найти надежный способ проверить, авторизован ли GTalk.

Опять же, мне не нужно гарантировать доставку сообщений, но я, по крайней мере, хотел бы знать, если доставка возможно даже .Есть ли у кого-нибудь интересные решения?

16
задан Ian Elliott 26 October 2011 в 06:29
поделиться