WebApp快捷打包
个推推送
转到模块插件

敬告:此 DEMO 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,了解更多

JS-SDK 引用方式:

♦ 普通网页 script 方式加载:下载最新版 jsBridge-v20241118.zip,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;

♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package

个推推送

setListener 设置消息监听器

• 设置本监听器可以收到个推通道下发的通知和透传消息

• 如果多次设置监听器,只有最后一个才会收到通知。

jsBridge.getui.setListener(function(msg) {
  alert(JSON.stringify(msg));
});
alert("已设置监听器");

/**
msg 回调参数说明
{
  messageId: //个推下发消息的编号,字符串类型
  payload:   //消息内容,字符串类型,如果你发送的是JSON数据,可以用 JSON.parse(payload) 转换
}
**/

turnOffPush 停止推送

jsBridge.getui.turnOffPush();
alert("已停止接收推送");

turnOnPush 恢复推送

jsBridge.getui.turnOnPush();    
alert("已恢复接收推送");

isPushTurnedOn 检查推送是否已开启

♦ 仅支持 Android,iOS 始终返回 true。

jsBridge.getui.isPushTurnedOn(function(isOn){
  alert(isOn);
});

setSilentTime 设置静默时间

♦ 仅支持 Android,静默期间内推送功能将不再联网。

♦ iOS 始终返回 false

jsBridge.getui.setSilentTime(    
{
  beginHour: 20, //从晚上20点开始,取值范围0-23
  duration : 8   //持续8个小时,取值范围0-23
}, function(succ){
  alert(succ ? "设置成功" : "设置失败");
});

getClientid 获取消息接收设备唯一标识

♦ 个推服务器分配给当前设备的唯一标识 cid

♦ 你可以将 cid 保存到自己的服务器上,可以根据 cid 来向此设备推送消息。

jsBridge.getui.getClientid(function(cid){
  //复制到剪贴板
  jsBridge.setClipboardText(cid);
  jsBridge.toast("已复制");
  alert(cid);
});

setBadge 设置角标数字

//仅支持苹果iOS和安卓华为、OPPO、VIVO
//服务器端推送华为角标 
//应用入口Activity路径名称为:com.lt.app.MainActivity
jsBridge.getui.setBadge({
  //角标数字,0则清除角标
  badge: 18
}, function(succ) {
  alert(succ ? "设置成功" : "设置失败");
});

setBadge 清除角标数字

jsBridge.getui.setBadge({
  badge: 0
});

别名

bindAlias 绑定别名

♦ 注意这个接口是覆盖逻辑,而不是增量逻辑。即新的调用会覆盖之前的设置。

♦ 同一个别名最多绑定10个 ClientID,当已绑定10个 ClientID 时,再次调用此接口会自动解绑最早绑定的记录。

♦ 此接口与 unBindAlias 一天内最多调用100次,两次调用的间隔需大于5秒。

jsBridge.getui.bindAlias('your_alias', function(succ){
  alert(succ ? "绑定成功" : "绑定失败");
});

unBindAlias 解绑别名

jsBridge.getui.unBindAlias(
{
  alias :"your_alias",
  isSelf: true  //是否只对当前 cid 有效,如果是 true,只对当前cid做解绑;如果是 false,对所有绑定该别名的cid列表做解绑
}, function(succ){
  alert(succ ? "解绑成功" : "解绑失败");
});

标签

setTag 设置标签

jsBridge.getui.setTag(['tag1', 'tag2', 'tag3'], function(succ){
  alert(succ ? "设置成功" : "设置失败");
});

别名 Alias:
标签 Tag:


集成 服务端SDK

目前本平台仅提供群发推送操作功能,如需根据 clientId、alias、tag 进行定向推送,请参考 个推官方手册 选择合适的语音平台集成服务端SDK。

用户点击手机上的消息通知时如需在 APP 中打开指定的网页,请发送 NotificationTemplate (点击通知打开应用)模板消息 template :
Android 添加 JSON 透传内容(TransmissionContent) template.setTransmissionContent("{\"url\": \"http://...要打开的网页地址\"}")
iOS 实例化 APNPayload, 使用 payload.addCustomMsg("url", "http://....") 方法添加 url 字段,template.setAPNInfo(Payload payload) 方法将 payload 写入消息模板

如果你使用个推平台Web端发送通知,请点击进入你创建的应用 - 创建推送 - 推送通知,展开 高级设置 - 开启 透传消息,并填写透传内容 {"url": "http://..."}



关闭 Android App 后收不到通知

Android 的推送通过长连接的方式实现,只有在保持连接的情况下才能收到通知。而有的第三方 ROM 会限制一般应用服务的自启动,也就是在退出应用后,应用的所有服务均被杀死,且无法自启动,所以就会收不到通知。

如果你的应用希望随时都能收到推送,官方推荐是通过文案的方式引导用户在设置中允许你的应用能够自启动,常见机型的设置方法可以参考 这里

为什么 QQ、微信之类的应用退出后还能够收到通知?因为这些大厂应用,手机厂商默认都会加入自启动白名单中,也不会在应用退出后杀死它们的相关服务。 如果你多加留意,就会发现非大厂的应用如果你一段时间不用都是收不到推送的。