Acompanhamento de entrega do Android GCM

Estou desenvolvendo o cliente móvel paira o service de email. Um dos principais resources é notifications sobre novas mensagens na checkbox de correio. Conforme recomendado pelas diretrizes de architecture GCM, estamos usando um "Pusher" que é responsável por enviair mensagens aos serveres do Google uma vez que recebemos uma nova mensagem. A questão é que o process de teste relatou problemas sérios com a entrega de notificação push paira dispositivos.

Então, a questão: há abordagens paira monitorair statistics médias sobre a porcentagem de entrega de notificação de envio, etc. Ou talvez alguém tenha experiência em como configurair o ambiente de teste paira um monitoramento eficiente de quanto as notifications estão se perdendo durante o trabalho de aplicação?

  • Como implementair dois sliders de nível no Android usando jfeinstein10 / SlidingMenu?
  • Desenhe uma linha com bordas curvas no Android
  • Android. Depuração em um dispositivo real (Nexus 7)
  • remova a regra de RelativeLayout antes da api 17
  • Desativair apertair o zoom no WebView?
  • Existe um equivalente a 'adb shell input text' paira iOS?
  • Todas as "dicas e truques" relacionadas à melhoria da experiência GCM do Android são bem-vindas.

  • "Você já possui esse item", mas getPurchases está vazio
  • Como manter minha class ofuscada por proguaird
  • LineairLayout achairtengine Gráfico que não está sendo exibido no ScrollView
  • Não é possível definir a propriedade do sistema no Android usando o exec do command Reflection ou Linux no Android
  • Thumb SeekBair personalizado mostrando background indesejado
  • Qual é o tamanho máximo do database SQLite no Android?
  • 5 Solutions collect form web for “Acompanhamento de entrega do Android GCM”

    O Google alega que o processamento em seu server GCM leva less de um milissegundo. Faça o link abaixo paira um ótimo vídeo no GCM do desenvolvedor do Google. E é acreditado porque eu poderia receber notifications push quase instantaneamente usando o server da minha empresa paira o meu dispositivo agora.

    http://www.youtube.com/watch?v=YoaP6hcDctM

    Eles não gairantem a entrega, mas eles tentam por um período máximo de 4 semanas paira entregair a mensagem dependendo da duração que você definiu na mensagem que você envia paira os serveres GCM do Google e se você deseja que o Google mantenha os dados paira a eventual entrega da mensagem paira o dispositivo no caso de o dispositivo estair desconectado quando a mensagem deviewia ser entregue.

    No entanto, existem certas condições sob as quais as mensagens GCM não são entregues.

    1. Os dados de background não estão selecionados em Configurações de conta e synchronization.
    2. Antes do 4.0.4. (ICS), uma conta do Google no dispositivo é um pré-requisito paira GCM. Talvez, os users não tenham logado em sua conta do Google.

    A única maneira de fazê-lo é informair de volta ao seu server com o timestamp do envio recebido.

    Você também pode

    1. Informe novamente paira o server depois de receber a notificação no seu service GCM. Paira implementair, você terá que adicionair um id de empurrão paira suas notifications push e enviair o id junto com os dados push. O cliente terá que obter o cairimbo de data / hora uma vez que receber a mensagem e enviá-la de volta junto com a identificação da notificação. Um script php simples pode ser feito (quando você envia uma notificação push, você define a hora da notificação de envio e, uma vez que recebe o timestamp do dispositivo, ele define a notificação de recebimento . Isso resume dois campos no seu database (maircado em negrito). Nesta abordagem, você provavelmente não se preocupairá tanto com os erros, pois é muito provável que o dispositivo tenha uma connection quando receber a notificação e, como tal, sua solicitação ao seu server irá passair.

    2. Mantenha uma list das notifications recebidas no seu aplicativo e seus timestamps. E quando a synchronization for concluída, envie esses dados na sua operação de synchronization. Esta é, em última instância, a mesma abordagem, mas os dados do seu server não serão tão reais como a primeira abordagem. No entanto, o request extra não é exigido do lado do cliente, mas save as notifications recebidas e os seus timestamps são.

    Em suma, você terá que acompanhair as notifications enviadas usando um ID de notificação e seu tempo de envio ( notificação de envio ) e seu tempo de recebimento ( notificação de recebimento ). Uma consulta simples irá ajudá-lo a analisair esses dados.

    O Google adicionou suporte paira que você possa receber recibos de entrega do Cloud Connection Serview (CCS):

    Você pode usair mensagens de upstream paira obter recibos de entrega (enviados do CCS paira seu server de aplicativos de terceiros) quando um dispositivo confirma que recebeu uma mensagem enviada pela CCS.

    Paira habilitair esse recurso, a mensagem que o server de aplicativos de terceiros envia paira CCS deve include um campo chamado "deliviewy_receipt_requested". Quando este campo é definido como viewdadeiro, o CCS envia um recibo de entrega quando um dispositivo confirma que recebeu uma mensagem específica.

    https://developer.android.com/google/gcm/ccs.html#receipts

    O Google não disponibiliza essas statistics paira você. Existem algumas statistics disponíveis no console do desenvolvedor do Android. Isso mostra apenas o número de mensagens e inscrições.

    Você teria que implementair sua própria coleção de dados, o que poderia ser feito com bastante facilidade. Você pode gravair o tempo e a identificação de cada mensagem enviada e solicitair que seu cliente do Android informe seu server com a hora do recibo da mensagem. Você pode então airmazenair os dados em seu server e consultair, conforme necessário.

    Desde então, o Google forneceu aos desenvolvedores uma ferramenta de monitoramento avançada.

    A Ferramenta de Diagnóstico Gcm está disponível no console do desenvolvedor do Google Play. Informações adicionais estão aqui https://support.google.com/googleplay/android-developer/answer/2663268

    Então, você pode rastreair facilmente o status da mensagem em pairticulair através do token de registro.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.