方案一:
let pinf = plus.push.getClientInfo();
let cid = pinf && pinf.clientid || ''; //客户端标识
有可能取不到clientId,或者为‘undefined’ ‘null' 等字符串
由于可能取不到,然后使用方案二,异步获取
方案二:
plus.push.getClientInfoAsync((info) => {
cid = info.clientid;
}, err => {
});
但是我用方案二在手机上真机测试获取cid失败,但是用方案一获取成功,
不清楚什么原因...
打印结果:
踩坑记录:
unipush获取的clientid为null,但是偶尔clientid值也可以获取
后来在网上找了好多资料,都没有解决办法,有的说是手机兼容问题,
有帮助的文档:https://ask.dcloud.net.cn/article/34
后来我加了一个setTimeout定时器,发现每次都能拿到clientid值,顺利解决