codecamp

快应用 推送

接口声明

{"name": "service.push"}

导入模块

import push from '@service.push' 
或 
const push = require('@service.push')

接口定义

push.getProvider()1000+

获取服务提供商。

参数:

返回值:

字符串,服务提供商的代号,如厂商的英文品牌名称,假如无此服务则返回空字符串

示例:

console.log(push.getProvider())

push.subscribe(OBJECT)

订阅push,后续可以收到push消息(一般可在应用初始化的地方进行调用。比如在app的onCreate方法中调用。)

参数:

参数名 类型 必填 说明
success Function 成功回调
fail Function 失败回调,返回失败原因
complete Function 执行结束后的回调
success返回值:
参数名 类型 说明
regId String PushService返回的注册id,可用于针对某个用户发送消息

示例:

push.subscribe({
  success: function (data) {
    console.log(`push.subscribe succeeded, result data = ${JSON.stringify(data)}`)
  },
  fail: function (data, code) {
    console.log(`push.subscribe failed, result data = ${JSON.stringify(data)}, code = ${code}`)
  },
  complete: function () {
    console.log('push.subscribe completed')
  }
})

push.unsubscribe(OBJECT)

取消订阅(一般不建议调用,调用后regId失效,需要重新订阅获取新的regId)

参数:

参数名 类型 必填 说明
success Function 成功回调
fail Function 失败回调,返回失败原因
complete Function 执行结束后的回调

示例:

push.unsubscribe({
  success: function (data) {
    console.log(`push.unsubscribe succeeded, result data = ${JSON.stringify(data)}`)
  },
  fail: function (data, code) {
    console.log(`push.unsubscribe failed, result data = ${JSON.stringify(data)}, code = ${code}`)
  },
  complete: function () {
    console.log('push.unsubscribe completed')
  }
})

push.on(OBJECT)

添加push事件回调(透传消息的payload内容可在此回调中收到)

参数:

参数名 类型 必填 说明
callback Function push事件回调处理
callback返回值:
参数名 类型 说明
messageId String 消息id
data String 消息内容payload

示例:

push.on({
  callback: function (ret) {
    console.log(`received pass through message, ret = ${JSON.stringify(ret)}`)
  }
})

push.off(OBJECT)

移除 push 事件回调,push.on中的callback不会再收到透传内容

  • 注意: OPPO 快应用暂不支持此特性

参数:

示例:

push.off()

后台运行限制

无限制。 后台运行详细用法参见 后台运行脚本

支持明细

厂商支持备注
小米YES小米消息推送服务
中兴no-
华为1020+华为开发者联盟
金立1010+金立快应用开发者中心
联想no-
魅族1010+魅族集成推送服务
努比亚no-
OPPOYESOPPO 消息推送服务
vivono-
一加--
预览版no预览版不提供推送接口


快应用 音频
快应用 支付
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

快应用 参考手册

快应用 安全

快应用 声音音频

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }