// 初始化极光推送
initJPush: function() {
var that = this;
var ajpush = api.require('ajpush');
if (api.systemType == 'android') {
// 初始化推送服务,只Android有效,iOS上会自动初始化
ajpush.init(function(ret) {
if (ret && ret.status) {
that.jPushSet();
}
});
} else {
that.jPushSet();
}
},
// 设置极光推送 和 监听消息透传
jPushSet: function() {
var ajpush = api.require('ajpush');
var userId = func.session().userId || '';
if (!userId) {
return
}
ajpush.isPushStopped(function(ret) {
if (ret && ret.isStopped == 1) {
console.log('推送已停止,正在恢复中...');
ajpush.resumePush(function(ret) {
if (ret && ret.status) {
console.log('推送已恢复,正在设置别名...');
// 用会员ID作为推送的别名
ajpush.bindAliasAndTags({
alias: userId
}, function(ret, err) {
if (ret && ret.statusCode == 0) {
console.log("设置极光推送别名成功")
} else {
console.log('设置极光推送别名失败,err:',err)
}
});
} else {
console.log('恢复推送异常,异常信息:', ret || err);
}
});
} else {
//这里可以执行
// 用会员ID作为推送的别名
ajpush.bindAliasAndTags({
alias: userId
}, function(ret, err) {
//这里始终不执行.......... if (ret && ret.statusCode == 0) {
console.log("设置极光推送别名成功");
} else {
console.log('设置极光推送别名失败,err:', err);
}
});
}
});
}
然后,我爱模板网又打包了之前的项目,代码一模一样,发现没问题。最后,将今日周边项目打包为测试版,发现执行了。但是之前的项目都是自定义loader也执行的,不知道为什么。今天,我又将它打包成loader,发现也执行了,真实奇葩!! apicloud jpush组件的绑定别名方法bindAliasAndTags不执行回调
我爱模板网在开发今日周边项目时,遇到了一个奇葩的问题,就是 apicloud jpush组件的绑定别名方法bindAliasAndTags不执行回调,仔仔细细检查了代码,没有任何问题,key也配置正确了,就是不执行回调。代码如下:
