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后台会直接检测为小程序,不管是否勾选离线推送都只能在线推送。
根据自己编译环境具体看使用什么方法
            
            
            
            
2 个评论
要回复文章请先登录或注册
1***@163.com
1***@qq.com