腾讯信鸽厂商推送简介
移动推送 TPNS(Tencent Push Notification Service)为应用提供合法合规、消息通道稳定、消息高效秒达、全球服务覆盖的消息推送服务,已稳定服务腾讯游戏、腾讯视频等超高日活应用;支持App推送、应用内消息、智能短信等多种消息类型,有效提升用户活跃度。
tpnsPushPlus 插件概述
本插件封装了腾讯信鸽厂商推送的原生 SDK,集成了App推送相关功能;
插件使用攻略
使用之前须从腾讯信鸽厂商推送平台申请开发者账号并创建应用,开通广告服务。
腾讯信鸽厂商推送申请地址腾讯信鸽厂商推送
插件依赖
1.使用本插件需要上传【hmsCore】扩展插件包,配合使用(【自定义插件教程】)
2.如遇见其他问题请联系QQ:770104707
使用此插件之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:
<preference name="backgroundMode" value="remote-notification"/>
<!-- 腾讯tpns 推送 start-->
<intent-filter>
<action name="android.intent.action.VIEW" />
<category name="android.intent.category.DEFAULT"/>
<data scheme="[android-scheme]" host="[android-包名]" path="/tpnspushplus" />
</intent-filter>
<!-- 该产品的服务接入点 -->
<!-- 空 默认广州 tpns.tencent.com-->
<!-- 上海:tpns.sh.tencent.com -->
<!-- 新加坡:tpns.sgp.tencent.com -->
<!-- 中国香港:tpns.hk.tencent.com -->
<meta-data name="XG_SERVER_SUFFIX" value="tpns.tencent.com"/>
<!-- 华为配置 -->
<meta-data name="com.huawei.hms.client.appid" value="appid=102********601"/>
<!-- 荣耀配置 -->
<meta-data name="com.hihonor.push.app_id" value="102********601"/>
<!-- vivo配置 -->
<meta-data name="com.vivo.push.app_id" value="104********329"/>
<meta-data name="com.vivo.push.api_key" value="0307d2e71********9c72e7bc404cd"/>
<feature name="tpnsPushPlus">
<!--信鸽 andorid-->
<param name="android_accessId" value="158********7" />
<param name="android_accessKey" value="AQX********BXY" />
<!-- oppo配置 -->
<param name="OppoPushAppId" value="303********18" />
<param name="OppoPushAppKey" value="00c3e********7641d988042" />
<!-- 魅族 -->
<param name="MzPushAppId" value="14********42" />
<param name="MzPushAppKey" value="d7d2de2ce********f2af946679" />
<!-- 小米 -->
<param name="MiPushAppId" value="288230********8525806" />
<param name="MiPushAppKey" value="5791********6806" />
<!--信鸽 ios-->
<param name="ios_accessId" value="158********27" />
<param name="ios_accessKey" value="AQ********BXY" />
<!-- 该产品的服务接入点 -->
<!-- 空 默认广州 tpns.tencent.com-->
<!-- 上海:tpns.sh.tencent.com -->
<!-- 新加坡:tpns.sgp.tencent.com -->
<!-- 中国香港:tpns.hk.tencent.com -->
<param name="ios_domainName" value="tpns.tencent.com" />
</feature>
sdk 初始化
initSdk({params},callback(ret, err))
无
ret:
{
status: true, //初始化状态
code: 0, //状态码
eventType: 'onInit', //事件类型
msg: "onInitSdk",//描述
result:{ //其他结果数据
version:"3.8.0" //sdk 版本号
}
}
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.initSdk({
},function(ret, err) {
if (ret.status) {
alert("sdk 初始化成功");
} else {
alert('sdk 初始化失败');
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设备注册
registerPush({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.registerPush({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设备反注册
unregisterPush({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.unregisterPush({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取 Token
getToken({params}, callback(ret, err))
无
ret:
{
status: true, //初始化状态
code: 0, //状态码
eventType: 'getToken', //事件类型
msg: "getToken",//描述
result:{ //其他结果数据
token:"" //token
}
}
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.getToken({
}, function(ret, err) {
if(ret.status){
var result = ret.result;
//token
var token = result.token;
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
事件监听
setEventListener({params}, callback(ret, err))
无
ret:
{
status: true, //初始化状态
code: 0, //状态码
eventType: 'setEventListener', //事件类型
msg: "setEventListener",//描述
result:{ //其他结果数据
}
}
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.setEventListener({
}, function(ret, err) {
if(ret.status){
var result = ret.result;
if(ret.eventType == "onTextMessage"){
//接收透传消息
}
if(ret.eventType == "onNotificationShowedResult"){
//通知展示结果
}
if(ret.eventType == "onNotificationClickedResult"){
//获取通知点击结果
}
if(ret.eventType == "onRegisterResult"){
//推送注册结果
}
if(ret.eventType == "onUnregisterResult"){
//推送反注册结果
}
if(ret.eventType == "onSetTagResult"){
//设置标签结果
}
if(ret.eventType == "onQueryTagsResult"){
//查询属性结果
}
if(ret.eventType == "onDeleteTagResult"){
//删除标签结果
}
if(ret.eventType == "onClearAndAppendTagsResult"){
//清除并更新标签结果(ios)
}
if(ret.eventType == "onClearTagsResult"){
//清除所有标签结果(ios)
}
if(ret.eventType == "onSetAccountResult"){
//设置账号结果
}
if(ret.eventType == "onDeleteAccountResult"){
//删除账号结果
}
if(ret.eventType == "onClearAndAppendAttributesResult"){
//清除并更新属性结果(ios)
}
if(ret.eventType == "onClearAccountResult"){
//清除所有属性结果(ios)
}
if(ret.eventType == "onSetAttributeResult"){
//设置属性结果
}
if(ret.eventType == "onDeleteAttributeResult"){
//删除属性结果
}
if(ret.eventType == "onClearAndAppendAttributesResult"){
//清除并更新属性结果(ios)
}
if(ret.eventType == "onClearAttributesResult"){
//清除所有属性结果(ios)
}
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加手机号
upsertPhoneNumber({params}, callback(ret, err))
phoneCode
phoneNumber
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.upsertPhoneNumber({
phoneCode:"+86"
phoneNumber: "",
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加账号
upsertAccounts({params}, callback(ret, err))
accounts
{"0":"news","991":"770104707"},
accountType:
UNKNOWN(0),
CUSTOM(1),
TAID(989),
QIMEI(990),
QQ(991),
QQMD5(992),
IDFA(993),
IDFMD5(994),
MAC(995),
MACMDS(996),
OAID(997),
OAIDMD5(998),
UNIONID(999),
IMEI(1000),
IMEIMD5(1001),
PHONE_NUMBER(1002),
WX_OPEN_ID(1003),
QQ_OPEN_ID(1004),
EMAIL(1005),
SINA_WEIBO(1006),
ALIPAY(1007),
TAOBAO(1008),
DOUBAN(1009),
FACEBOOK(1010),
TWITTER(1011),
GOOGLE(1012),
BAIDU(1013),
JINGDONG(1014),
LINKEDIN(1015);
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.upsertAccounts({
accounts:[
{accountType:"",account:""},
{accountType:"",account:""}
],
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除账号
delAccounts({params}, callback(ret, err))
accountTypes
类型:数组
描述:(必填)标签数组
["0" , "991"]
accountType:
UNKNOWN(0),
CUSTOM(1),
TAID(989),
QIMEI(990),
QQ(991),
QQMD5(992),
IDFA(993),
IDFMD5(994),
MAC(995),
MACMDS(996),
OAID(997),
OAIDMD5(998),
UNIONID(999),
IMEI(1000),
IMEIMD5(1001),
PHONE_NUMBER(1002),
WX_OPEN_ID(1003),
QQ_OPEN_ID(1004),
EMAIL(1005),
SINA_WEIBO(1006),
ALIPAY(1007),
TAOBAO(1008),
DOUBAN(1009),
FACEBOOK(1010),
TWITTER(1011),
GOOGLE(1012),
BAIDU(1013),
JINGDONG(1014),
LINKEDIN(1015);
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.delAccounts({
accountTypes:["0","991"],
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清空所有账号
clearAccounts({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearAccounts({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
新增多个标签
appendTags({params}, callback(ret, err))
tags
[
"tag1","tag2","tag3"
]
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.appendTags({
tags:["tag1","tag2","tag3"]
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
查询标签
queryTags({params}, callback(ret, err))
pageIndex
pageSize
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.appendTags({
pageIndex:1,
pageSize:20
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除标签
delTags({params}, callback(ret, err))
tags
[
"tag1","tag2","tag3"
]
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.delTags({
tags:["tag1","tag2","tag3"]
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
覆盖多个标签
clearAndAppendTags({params}, callback(ret, err))
tags
[
"tag1","tag2","tag3"
]
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearAndAppendTags({
tags:["tag1","tag2","tag3"]
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清除所有标签
clearTags({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearTags({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
新增用户属性
upsertAttributes({params}, callback(ret, err))
attributes
{
key1:"value1",
key2:"value2"
}
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.upsertAttributes({
attributes:{
key1:"value1",
key2:"value2"
}
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
删除用户属性
delAttributes({params}, callback(ret, err))
attributeKeys
[
"key1","key2"
]
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.delAttributes({
attributeKeys:["key1","key2"],
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
更新用户属性
clearAndAppendAttributes({params}, callback(ret, err))
attributes
{
key1:"value1",
key2:"value2"
}
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearAndAppendAttributes({
attributes:{
key1:"value1",
key2:"value2"
}
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清空已有用户属性
clearTags({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearAttributes({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加本地通知
addLocalNotification({params}, callback(ret, err))
title
body
params
{
key1:"value1",
key2:"value2"
}
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.addLocalNotification({
title:"Test title",
body:"Test body",
params:{
key1:"value1",
key2:"value2"
}
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清除本地通知
clearLocalNotifications({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.clearLocalNotifications({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
清除所有通知
cancelAllNotifiaction({params}, callback(ret, err))
无
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.cancelAllNotifiaction({
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本
设置角标
setBadge({params}, callback(ret, err))
badgeNumber
无
var tpnsPushPlus = api.require('tpnsPushPlus');
tpnsPushPlus.setBadge({
badgeNumber:1,
}, function(ret, err) {
});
iOS系统,Android系统
可提供的1.0.0及更高版本