【问题标题】:Trouble shooting push notifications with urbanairship使用 urbanairship 解决推送通知问题
【发布时间】:2016-01-21 10:02:28
【问题描述】:
在尝试使用 urbanairship 管理应用并解决“丢失”推送通知时,我决定编写一个问答来帮助其他开发人员。
客户最常见的抱怨是,设备上的用户没有收到通知。
有时整个小组会错过通知,这导致我检查客户端应用程序和 urbanairship 仪表板以了解发生了什么。
我在仪表板上发现的最常见错误是:
收到错误:收到推送但平台上缺少授权
GCM 收到错误:收到的推送无效授权
平台GCM
应用程序无权发送到此
设备原始消息:错误:发件人 ID 不匹配
我想分享我是如何解决这些问题的。
【问题讨论】:
标签:
android
push-notification
urbanairship.com
【解决方案1】:
有几点可能会导致错误:
-
gcmsender id 与项目编号不匹配
在airshipconfig.properties gcmSender = #########
The Mismatch Sender ID 错误发生在您的发件人 ID 不正确时。确保您使用的是您的项目编号,而不是 ID。
-
API 密钥不匹配
在 urbanairship 仪表板中,转到设置 -> 服务
-
包名不匹配
包名称是可选的,如果它们不匹配,虽然这会导致问题并且可以完全删除 - 包名称,而不是服务!
-
无法访问互联网
我担心的一件事是缺乏 IT 技能的用户知道如何使用应用程序,而且我不会忽视互联网访问。
- 如果通知仅在连接到 WiFi 时到达,请确认
背景数据已启用。
- 需要启用后台数据
设备。否则推送无法从 GCM 发送到 Android 设备,直到
他们有活跃的 WiFi 连接。离开后推送丢失
城市飞艇。为每个 Android 版本启用后台数据
操作系统,请查阅 Android 文档。注意*
-
在设备上启用通知
- 通知不
为应用程序本身启用。通知已启用或
在“管理应用程序”屏幕中禁用。导航到每个
Android OS 通过选择显示通知。
引述摘自 Urbanairship GCM Troubleshooting Guide
nb* 没有合理的方法来确保启用移动数据,用户最多只能在没有 wifi 连接并且禁用移动数据时收到警告Latest update on enabling and disabling mobile data programmatically
作为额外的:
对于特定设备上的通知问题,我要求客户填写如下表格:
手机类型:
Android、iOS 等。
制作:
示例:索尼,
三星、苹果。
型号
在 iOS 示例中:
设置 -> 常规 ->
关于 -> 型号 = MF325X/A
在 Android 示例中:
设置 -> 关于手机 -> -> 型号 = E2353
确切的 Android 或 iOS 版本
在 iOS 示例中:
设置 -> 常规 -> 关于 -> 版本 = 8.3 (12F70)
在 android 示例中:
设置->关于手机->安卓版本
这样,操作系统版本之间的任何权限更改、推送通知的管理方式或设备中的已知错误都可以被探索。