官方文档入口(内容非常的齐全,包括所有可能遇到的问题也都有相应的解决方法)

UniPush开通指南 https://ask.dcloud.net.cn/article/35716
UniPush使用指南 http://ask.dcloud.net.cn/article/35622
Unipush常见问题  https://ask.dcloud.net.cn/article/36611
服务端api接口推送调用文档
https://docs.getui.com/getui/server/rest_v2/push/ 

本人进行一个所有遇到问题的复盘

1.ios进行应用配置的时候需要的证书,不是打包发布版本的证书,是进行消息推送的证书,不要选错了,配置iOS推送证书_中控易动的博客-CSDN博客_ios推送证书

2.关于各大厂商的的参数配置申请Android厂商推送通道 - 简书

华为手机一定要配置sha256指纹签名证书,配置方法:先进行app打包,会生成一个apk的文件链接,点击链接进行下载,然后解压那个文件里面有一个cert.RSA文件   keytool -list -v -keystore xxx/xxx/cert.RSA

 

 

 

3.小米手机收不到在线和离线消息,明明全部都配置好了,但是还是都不行,因为小米手机里面有很多通知设置,我把里面的全部通知设置打开了之后,就可以收到消息了

4.一定要打包之后获取的clientid才能起作用,或者自定义基座调试之后获取的cid,这两种情况以外的cid都会显示离线

5.前端只需要这点基本代码,其余的都是后端去整~,或者根据业务需求会加一些接口啥的,我当时以为全部都是前端配置

  /* 接收消息通知并跳转到tab页面 */
    const _self = this;
    const _handlePush = function (message) {
      _self.updatePushMessage(message);
    };
    plus.push.addEventListener(
      "click",
      function (message) {
        // plus.nativeUI.toast(id);
        _handlePush(message);
        uni.reLaunch({
          url: "/pages/order/list",
        });
      },
      true
    );
    plus.push.addEventListener("receive", function (message) {
      // plus.nativeUI.toast('push receive');
      _handlePush(message);
    });
    // 获取App端cid
    let pinf = plus.push.getClientInfo();
    if (pinf && pinf.clientid) {
      uni.setStorageSync("cid", pinf.clientid);
    } else {
      var obtainingCIDTimer = setInterval(function () {
        pinf = plus.push.getClientInfo();
        if (pinf.clientid) {
          uni.setStorageSync("cid", pinf.clientid);
          clearInterval(obtainingCIDTimer);
        }
      }, 50);
    }
    setTimeout(() => {
     console.log("cid", uni.getStorageSync("cid"));
    }, 500);

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐