使用urbanairship解决推送通知问题

时间:2016-01-21 10:02:29

标签: android push-notification urbanairship.com

尝试使用urbanairship管理应用程序并解决问题'缺少'推送通知,我决定写一个Q& A来帮助其他开发人员。

客户最常见的抱怨是,设备上的用户没有收到通知。

有时候整个小组都会错过通知,导致我检查客户端应用程序和urbanairship仪表板,以确定发生了什么。

我在仪表板上发现的最常见错误是:

  

收到错误:在平台上发送缺少授权的推送

     

GCM收到错误:已启用无效授权的推送   平台GCM

     

应用程序无权发送给此   设备原始消息:错误:发件人ID不匹配

我想分享一下我是如何解决这些问题的。

1 个答案:

答案 0 :(得分:1)

有几点可能导致错误:

  1. 项目编号
  2. 的gcmsender ID不匹配

    在airshipconfig.properties gcmSender = #########

      

    The Mismatch Sender当您的发件人ID不正确时,会发生ID错误。确保您使用的是项目编号,而不是ID。

    enter image description here

    1. API密钥不匹配
    2. enter image description here

      在urbanairship仪表板中,转到设置 - >服务

      enter image description here

      1. 包名称不匹配
      2. 包名是可选的,如果它们不匹配,虽然这会导致问题并且可以完全删除 - 包名,而不是服务!

        enter image description here

        1. 缺乏互联网接入
          我担心的一件事是缺乏IT技能的用户知道如何使用应用程序,我不会忽视互联网访问。
        2.   
              
          • 如果通知仅在连接到WiFi时到达,请确认   启用后台数据。
          •   
          • 需要启用后台数据   设备。否则推送无法从GCM发送到Android设备   他们有有效的WiFi连接。他们离开后推动丢失   城市飞艇。为每个Android版本启用背景数据   操作系统,请参阅Android文档。 NB *
          •   
          1. 在设备上启用通知
          2.   
                
            • 通知不是   为应用程序本身启用。通知已启用或   在“管理应用程序”屏幕中禁用在那里导航每个   通过选择显示通知来安装Android OS。
            •   

            enter image description here

            enter image description here

            报价取自Urbanairship GCM Troubleshooting Guide

            nb *没有合理的方法可以确保启用移动数据,当没有wifi连接且移动数据被禁用时,用户最多可以收到警告Latest update on enabling and disabling mobile data programmatically

            作为额外的:

            对于特定设备上的通知问题,我要求客户填写如下表格:

              

            移动类型:
                   Android,iOS,其他。
               
               示例:Sony,   三星,Apple    的模型
              在iOS示例中:
               设置 - >一般 - >   关于 - >型号= MF325X / A
              在Android示例中:
               设置 - >关于手机 - > - >型号= E2353
               精确的Android或iOS版
              在iOS示例中:
                设置 - >一般 - >关于 - >版本= 8.3(12F70)
               在android例子中:
                设置 - >关于手机 - > Android版

            通过这种方式,可以探索操作系统版本之间的权限更改,推送通知的管理方式或设备中的已知错误。