本文整理了开发者在使用极光推送的过程中常用的一些文档,并说明了遇到问题后该如何解决,建议收藏。
一、常用文档
- 控制台使用指南中常用:统计项的含义
- Android SDK 文档中常用:错误码列表、别名与标签
- iOS SDK 文档中常用:证书设置、设置角标、获取 APNS 消息
- REST API 文档:使用服务端 SDK 时也可以对照查看,常用文档有:API 调用频率限制、错误码、送达状态查询、处理别名标签、定时推送
- 推送的入门知识 / 推送的流程讲解 Android 点我,iOS 点我
- 从简单的测试中了解极光推送可以实现的效果
- 教学视频: JPush iOS SDK 的集成、Android 开发实战:极光推送集成
二、遇到问题如何解决
2.1 阅读文档
建议大家在使用极光产品前,详细阅读官方文档,遇到问题可首先参考官方 FAQ。
2.2 在 极光社区 里搜索
- 社区网站顶部设有搜索框,搜索可解决 80% 的问题
- 如果使用 Chrome 浏览器,可使用 cmd / Ctrl + G 唤出页面搜索框,用关键字定位该页面中的有效信息。
2.3 根据提问指南提问
- 若搜索无果,可点击提问按钮,描述你的问题后提问咨询。
- 为更有效更快速的解决问题,请添加上与问题有关的标签(极光推送、REST API 等),并阅读如下 「提问指南」,提供有效而完整的信息。
2.3.1 信息提供建议
- 相关代码、log、报错、崩溃栈等均建议复制粘贴为文本或上传为 TXT 文本,在段落前后加上三个`符号可以形成代码段。
- 请避免使用 以前可以,现在不行 这种对解决问题毫无帮助的模糊的描述,该场景可以提供具体的时间分割点,以及在时间点前后你们所做的改动(如发布了 App 版本等)。
2.3.2 一般求助的提问
你需要咨询的产品、服务是什么
你为解决该疑问做了什么工作(搜索了什么,得到了什么信息)
具体描述你的疑问,你对该内容的个人理解
2.3.3 使用出现异常的提问
你所使用的极光产品有些什么(是 JPush / JMessage / JShare / JAnalytics / JSMS 的原生 SDK ,还是某插件,还是服务端某语言 SDK,开源的附上 GitHub 链接 )
该产品的 具体版本号 ;请 避免使用最新版本 这样的模糊描述词。
你需要咨询的、测试出现问题的是 iOS 、Android、Web、Windows 还是其他设备,出现问题的具体系统和机型。
导致该问题出现的具体操作步骤(请具体到每一步,以便于我们测试复现)、具体调用的哪一个 API 、观测到的具体现象(必要时可截图、录屏)、完整的 log 信息(上传 TXT 文件或直接粘贴文本,如何查看客户端日志)、ANR 问题请提供 /data/anr/trace.txt
使用官方 demo 是否有同样的问题,若 demo 没有问题,那么最好提供一个可以复现问题的你项目的 demo
你自己有做过的排查步骤和结果,你的猜测。
2.3.4 推送异常的提问
推送请求失败, JPush 会以异常抛出,捕获异常( try catch )可获得 JPush 返回的错误信息,如:
{"msg_id": 699616375, "error": { "message": "cannot find user by this audience", "code": 1011 } };
根据异常 Message 和 code 内容在列表中找到对应说明进行排查问题,并可在社区搜索报错码,大部分都有完整的排查步骤,解决不了则提供错误码提问。
推送请求成功,而你们认为客户端没有收到
请优先根据总结自行排查一下
Android 收不到消息排查
iOS 收不到消息排查排查无果,需要官方协助查询,请说明你根据排查步骤已确认有哪些信息是正确的,并务必提供如下两个信息,缺一不可:
- Message ID(调用 API 请求成功后会返回 msgid ,官网 - 推送历史 - 操作 - i 详情里面也可以查看该信息,如果查不到历史请注意筛选条件 web/api ,历史只保存 30 天)
- 测试设备的 registrationID(不管是广播、别名、标签还是其他方式推送,均必须提供该信息),该信息只能在客户端调 API 获取,服务端无法取到,服务端若需存储请让客户端获取后上传 。iOS 的 registrationID 获取方法点我、Android 的 registrationID 获取方法点我
2.3.5 功能改进意见的提问
- 当前极光的产品没有某功能
- 该功能有何应用场景,你在什么场景下需求该功能
- 具体描述你需求实现什么(或许在当前功能下已可间接实现)
- 你为何认为该功能很有必要
三、更新与下载
建议开发者在更新 App 版本前关注一下极光更新列表,保持使用最新的 SDK 版本。最新发布的 SDK 一般是兼容了最新系统、修复了新发现的 BUG、发布了新功能。
- 「SDK 更新列表」
- 「SDK 下载」
- 「官方插件 GitHub 地址」
- 包括:phonegap/cordova、unity-3d、react-native、 cocos2d-x、Flutter
- 「服务端 SDK GitHub 地址 」
- 包括:Java、PHP、Python、Ruby、nodejs、C#(支持 .net) 。
- 「JPush swift demo」
- 包括:2.2、2.3、3.0,请在 branch 选择版本
- 「JPush Hbuilder demo」
如果对你有帮助,点个赞呗 ლ(╹◡╹ლ)
不吹不黑,关注「常见问题」专栏可以解决你 90% 的问题 (ノ◕ω◕)ノଘ_ଘ
如果还有你想知道的问题没有总结方案,来评论区跟我交流交流吖
0条评论