9***@qq.com
9***@qq.com
  • 发布:2024-04-19 11:48
  • 更新:2024-10-22 17:16
  • 阅读:836

uni-app排坑指南-uni-push获取cid异常问题的处理

分类:uni-app

uni-push2配置完成后,根据官方文档使用uni.getPushClientId方法获取cid,
可能会报错getPushClientId:fail uniPush is not enabled,此时重新打自定义调试基座也没有作用。

app端可以使用

let pinf = plus.push.getClientInfo();  
let cid = pinf && pinf.clientid || ''; //客户端标识  
uni.setStorageSync('unipush_id', cid)  
plus.push.getClientInfoAsync((info) => {  
    cid = info.clientid;  
    uni.setStorageSync('unipush_id', cid)  
    console.log(cid)  
}, err => {});

使用plus方法可以稳定获取到cid,但是这个方法有局限性,只能在APP-PLUS中使用。

如果想在h5中使用,就需要在app.vue文件中引入一下uni-push模块

// #ifdef H5  
require('@dcloudio/vue-cli-plugin-uni/packages/uni-push/dist/uni-push.es.js')  
// #endif

使用这个方法获取到的cid后台会直接检测为小程序,不管是否勾选离线推送都只能在线推送。
根据自己编译环境具体看使用什么方法

0 关注 分享

要回复文章请先登录注册

1***@163.com

1***@163.com

请问这个问题解决了么?怎么搞的,我这边也是uniPush2.0都开通了,还是会报getPushClientId:fail uniPush is not enabled错误
2024-10-22 17:16
1***@qq.com

1***@qq.com

请问获取到的都是null是什么情况
2024-08-23 16:07