差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 后一修订版 两侧同时换到之后的修订记录 | ||
im:android:push:troubleshooting [2019/11/29 02:42] huanxinfudh |
im:android:push:troubleshooting [2022/02/24 09:01] jennifer.zeng [VIVO推送] |
||
---|---|---|---|
行 121: | 行 121: | ||
</receiver> | </receiver> | ||
- | <receiver android:name="com.hyphenate.chatuidemo.receiver.MyxmReceiver"> | + | <receiver android:name="com.hyphenate.push.platform.mi.EMMiMsgReceiver"> |
<intent-filter> | <intent-filter> | ||
<action android:name="com.xiaomi.mipush.RECEIVE_MESSAGE" /> | <action android:name="com.xiaomi.mipush.RECEIVE_MESSAGE" /> | ||
行 192: | 行 192: | ||
options.setPushConfig(builder.build()); | options.setPushConfig(builder.build()); | ||
</code> | </code> | ||
- | 4、需要在消息扩展里设置上oppo的channel id | + | 4、oppo给8.0系统之后的手机发推送需要设置通道ID,环信这边推送给oppo的时候会加上默认的通道ID:“hyphenate_chatuidemo_notification”,如果需要指定准确的通道ID就需要在消息扩展里去设置项目本地使用的channelID |
<code> | <code> | ||
- | // 设置自定义推送提示 | + | // 设置推送通道ID |
JSONObject extObject = new JSONObject(); | JSONObject extObject = new JSONObject(); | ||
try { | try { | ||
- | extObject.put("em_oppo_push_channel_id", channelId); | + | extObject.put("em_push_channel_id", ”channelID“); |
} catch (JSONException e) { | } catch (JSONException e) { | ||
e.printStackTrace(); | e.printStackTrace(); | ||
行 245: | 行 245: | ||
如果以上两步都没有去设置,需要提供消息内容、消息时间和接收方id反馈给环信来查 | 如果以上两步都没有去设置,需要提供消息内容、消息时间和接收方id反馈给环信来查 | ||
- | ===== VIVO推送 ===== | + | ===== VIVO 推送 ===== |
- | 集成VIVO推送具体文件参考[[http://docs-im.easemob.com/im/android/push/thirdpartypush#vivo_%E6%8E%A8%E9%80%81%E9%9B%86%E6%88%90|VIVO推送集成]] | + | 集成 VIVO 推送具体文件参考[[http://docs-im.easemob.com/im/android/push/thirdpartypush#vivo_%E6%8E%A8%E9%80%81%E9%9B%86%E6%88%90|VIVO推送集成]] |
- | **集成OPPO推送时需要注意以下几点:** | + | **集成 OPPO 推送时需要注意以下几点:** |
1、测试的VIVO机型是否是支持VIVO推送的,详情可见[[https://dev.vivo.com.cn/documentCenter/doc/156 | VIVO官网文档_支持机型和系统]] | 1、测试的VIVO机型是否是支持VIVO推送的,详情可见[[https://dev.vivo.com.cn/documentCenter/doc/156 | VIVO官网文档_支持机型和系统]] | ||
行 255: | 行 255: | ||
2、需要在手机通知管理里打开该应用的允许通知权限 | 2、需要在手机通知管理里打开该应用的允许通知权限 | ||
- | 集成完成之后运行app去登录,在logcat里检索EMPushHelper查看日志确定下是否集成成功 | + | 集成完成之后运行 App 去登录,在 logcat 里检索 EMPushHelper 查看日志确定下是否集成成功 |
<code> | <code> | ||
- | //1、SDK判断当前设备VIVO推送可用 | + | //1、SDK 判断当前设备 VIVO 推送可用 |
2019-10-14 14:57:33.231 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:231]: [EMPushHelper] isSupportPush: FCM - false | 2019-10-14 14:57:33.231 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:231]: [EMPushHelper] isSupportPush: FCM - false | ||
2019-10-14 14:57:33.245 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:245]: [EMPushHelper] isSupportPush: MIPUSH - false | 2019-10-14 14:57:33.245 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:245]: [EMPushHelper] isSupportPush: MIPUSH - false | ||
行 267: | 行 267: | ||
2019-10-14 14:57:33.303 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:303]: [EMPushHelper] EMPushHelper register, prefer push type: VIVOPUSH | 2019-10-14 14:57:33.303 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:303]: [EMPushHelper] EMPushHelper register, prefer push type: VIVOPUSH | ||
- | //2、获取到的VIVO返回的推送token | + | //2、获取到的 VIVO 返回的推送 token |
2019-10-14 14:57:33.623 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:623]: [EMPushHelper] onReceiveToken: VIVOPUSH - 15665456497861102581637 | 2019-10-14 14:57:33.623 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:623]: [EMPushHelper] onReceiveToken: VIVOPUSH - 15665456497861102581637 | ||
2019-10-14 14:57:33.623 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:623]: [EMPushHelper] Retry upload after 4s if failed. | 2019-10-14 14:57:33.623 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:623]: [EMPushHelper] Retry upload after 4s if failed. | ||
行 273: | 行 273: | ||
2019-10-14 14:57:33.624 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:624]: [EMPushHelper] Retry upload after 301s if failed. | 2019-10-14 14:57:33.624 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:624]: [EMPushHelper] Retry upload after 301s if failed. | ||
- | //3、去上传推送token,后面有对应的证书名称 | + | //3、去上传推送 token,后面有对应的证书名称 |
2019-10-14 14:57:33.624 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:624]: [EMPushHelper] uploadTokenInternal, token=15665456497861102581637, url=https://a4.easemob.com:443/easemob-demo/chatdemoui/users/omg4, notifier name=11025#9b74dbfc-55c4-4441-9d0a-561ff21addc7 | 2019-10-14 14:57:33.624 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:624]: [EMPushHelper] uploadTokenInternal, token=15665456497861102581637, url=https://a4.easemob.com:443/easemob-demo/chatdemoui/users/omg4, notifier name=11025#9b74dbfc-55c4-4441-9d0a-561ff21addc7 | ||
- | //4、推送token上传成功 | + | //4、推送 token 上传成功 |
2019-10-14 14:57:33.760 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:759]: [EMPushHelper] uploadTokenInternal success. | 2019-10-14 14:57:33.760 24337-24437/com.hyphenate.chatuidemo D/ONE SDK: [2019/10/14 14:57:33:759]: [EMPushHelper] uploadTokenInternal success. | ||
</code> | </code> | ||
- | 上面的是上传推送token成功的日志,可以对比你本地logcat里的日志,看下是否完整。(''需在初始化环信SDK的时候设置EMClient.getInstance().setDebugMode(true)才会有详细的日志输出'') | + | 上面的是上传推送 token 成功的日志,可以对比你本地 logcat 里的日志,看下是否完整。(''需在初始化环信 SDK 的时候设置 EMClient.getInstance().setDebugMode(true) 才会有详细的日志输出'') |
- | 1、如果在这一步看到VIVOPUSH是false,那就是VIVO推送没有配置好,比如没有导入VIVO推送的jar,清单里没有去配置VIVO的appid和appkey | + | 1、如果在这一步看到 VIVOPUSH 是 false,那就是 VIVO 推送没有配置好,比如没有导入 VIVO 推送的 jar,清单里没有去配置 VIVO 的 Appid 和 App Key; |
- | 2、如果没有看到VIVO返回的推送token的日志,那应该会有输出onErrorResponse:后面会有VIVO那边返回的错误码,需根据错误码去排查下 | + | 2、如果没有看到 VIVO 返回的推送 token 的日志,那应该会有输出 onErrorResponse: 后面会有 VIVO 那边返回的错误码,需根据错误码去排查; |
- | 只要保证这两步是正常的,后面上传推送token的一般不会有问题,如果发现上传失败的情况,请反馈环信。然后在OPPO后台去使用推送token(在第二步中获取)给设备推送消息,收到之后就可以杀掉进程去测试离线推送了。 | + | 只要保证这两步是正常的,后面上传推送 token 的一般不会有问题,如果发现上传失败的情况,请反馈环信。然后在 OPPO 后台去使用推送 token (在第二步中获取)给设备推送消息,收到后可以杀掉进程去测试离线推送。 |
如果出现没有收到离线推送,需检查以下两步: | 如果出现没有收到离线推送,需检查以下两步: | ||
- | 1、是否有调用EMClient.getInstance().pushManager().disableOfflinePush去设置离线推送免打扰时间 | + | 1、是否有调用 EMClient.getInstance().pushManager().disableOfflinePush 去设置离线推送免打扰时间; |
- | 2、如果是群组消息是否有调用EMClient.getInstance().pushManager().updatePushServiceForGroup去屏蔽群组离线推送 | + | 2、如果是群组消息是否有调用 EMClient.getInstance().pushManager().updatePushServiceForGroup 去屏蔽群组离线推送。 |
- | 如果以上两步都没有去设置,需要提供消息内容、消息时间和接收方id反馈给环信来查 | + | 如果以上两步都没有去设置,需要提供消息内容、消息时间和接收方 ID 反馈给环信技术支持来查。 |