APP消息推送-个推java端实现

APP消息推送-个推java端实现实现效果
钱学森 气功必要的依赖
<!-- 个推sdk的依赖 -->
<dependency>
<groupId&in.platform</groupId>
<artifactId>gexin-rp-sdk-http</artifactId>
<version>4.0.1.17</version>
</dependency>
<repositories>
<repository>
<id>getui-nexus</id>
<url>igexin/nexus/content/repositories/releases/</url>
</repository>
</repositories>
⼀般流程
//1,从个推应⽤管理中获取参数 ui/dev/#/login
16位ms-dos子系统
private static String appId = "duPdyoiHn4926fsCDbuYu8";
private static String appKey = "SWrYn90wZv8jnVT3a68vm";
private static String masterSecret = "ZTqxZR6wSo7tnKum9WQuR6";
private static String url = "sdk.open.api.igexin/apiex.htm";
//2,构造IGtPush,代表在个推注册⼀个APP
IGtPush push = new IGtPush(url, appKey, masterSecret);
//3,定义⼀个个推模板
NotificationTemplate template = new NotificationTemplate();
//4,定义消息类型
AppMessage message = new AppMessage();
message.setData(template);
/
/5,发送消息
IPushResult ret = push.pushMessageToApp(message);
以上步骤根据业务实际需求更改,具体的属性下⾯都列出来了
IGtPush构造函数
host          ⾮必填推送os域名,如果不填⾃动检测⽤户⽹络,选择最快域名连接下发
appKey        必填鉴定⾝份是否合法
masterSecret  必填第三⽅客户端个推集成鉴权码,验证第三⽅合法性,在服务端推送鉴权时使⽤
useSSL        ⾮必填是否使⽤https接⼝调⽤,默认http
个推模板
1,打开应⽤模板
针对沉默⽤户,发送推送消息,点击消息栏的通知可直接激活启动应⽤,提升应⽤的转化率圆柱凸轮
NotificationTemplate
setAppId    必填设定接收的应⽤
setAppkey    必填⽤于鉴定⾝份是否合法
setDuration  ⾮必填收到消息的展⽰时间
transmissionContent  必填    2048中/英字符,消息内容,不⽀持转义字符
setTransmissionType  必填收到消息是否⽴即启动应⽤: 1为⽴即启动,2则⼴播等待客户端⾃启动
setStyle              必填知栏消息布局样式
2,打开⽹⻚模板
推送⼴促销活动,⽤户点击通知栏信息,直接打开到指定的促销活动⻚⾯,推送直接到达指定⻚⾯,免去了中间过程的⽤户流失LinkTemplate
setAppId    必填设定接收的应⽤
setAppkey    必填⽤于鉴定⾝份是否合法间苯二酚
setDuration  ⾮必填收到消息的展⽰时间
setUrl      必填    200中/英字符,点击通知打开⽹页地址
setStyle              必填知栏消息布局样式
3,启动下载任务模板
应⽤有更新,点击推送的更新通知,弹出下载弹窗,点击可启动应⽤更新下载。
NotyPopLoadTemplate
setAppId    必填设定接收的应⽤
setAppkey    必填⽤于鉴定⾝份是否合法
setDuration  ⾮必填收到消息的展⽰时间
setLoadUr      必填    200中/英字符,下载地址
setLoadTitle    必填下载标题
setLoadIcon    必填下载图标,本地需要加⼊file://,⽹络图标直接写⽹络地址
setPopTitle    必填    40中/英字弹出框标题
setPopContent  必填    600中/英字弹出框内容
setPopImage    必填    200中/英字符弹出框图标
setPopButton1  必填    4中/英字弹出框确认按钮⽂本显⽰
setPopButton2  必填    4中/英字弹出框取消按钮⽂本显⽰
setAutoInstal  ⾮必填是否⾃动安装,默认false
setActived      ⾮必填安装完成后是否⾃动启动程序,默认false
setStyle              必填知栏消息布局样式
4,透传消息模板
⾃定义通知栏样式不想使⽤默认的通知栏样式,即可使⽤消息透传的形式,⾃定义通知栏展现形式,使发送的通知更醒⽬,更突出TransmissionTemplate
setAppId    必填设定接收的应⽤
setAppkey    必填⽤于鉴定⾝份是否合法
setDuration  ⾮必填收到消息的展⽰时间
setTransmissionContent      必填    2048中/英字符,透传内容,不⽀持转义字符
setTransmissionType          必填收到消息是否⽴即启动应⽤,1为⽴即启动,2则⼴播等待客户端⾃启动
setStyle              必填知栏消息布局样式
5,消息撤回模板
因为操作失误导致推送错误的消息,即可使⽤消息撤回模板,指定需要撤回的消息进⾏撤回
指定⽤户推送时设置⽤户出现错误,可以⽤消息撤回模板,指定需要撤回的消息和⽤户进⾏撤回
可以针对⽤户 appId下所有消息进⾏撤回
版本要求:
客户端sdk:2.12.5.0以上
服务端os-sdk:java 4.1.0.0以上
撤回限制:
1,⽀持任务类型:os-sdk撤回模板⽀持撤回单推、推、toApp任务
2,⽀持模板:只⽀持撤回通知、不⽀持透传
3,第三⽅⼚商都不⽀持撤回
4,如果消息通过第三⽅⼚商离线下发,撤回必须使⽤force参数为true,并且会撤回AppId下的所有消息TransmissionTemplate
setAppId    必填设定接收的应⽤
setAppkey    必填⽤于鉴定⾝份是否合法
setOldTaskId 必填指定需要撤回消息对应的taskId
setForce    ⾮必填客户端没有到对应的taskid,是否把对应appid下所有的通知都撤回,默认false
6,模板样式(⽂档结尾)
消息类型
SingleMessage              单推消息体
ListMessage                列表推送消息体
AppMessage                  指定应⽤推送消息的消息体
消息体共有属性
setData      必填      ITemplate    推送消息内容
setPriority  否        int          消息体优先级
setOffline  否        loolean      消息离线是否存储,默认true
setOfflineExpireTime    ⾮必填  Long  消息离线存储多久,单位毫秒
setPushNetWorkType      ⾮必填  int    1:WIFI环境推送,0:不限制推送⽅式
AppMessage消息体独有属性
肌苷酸setAppIdList            必填    List  指定推送的应⽤列表
setPhoneTypeList        ⾮必填  List  设置机型
setProvinceList        ⾮必填  List  设置省份城市,可以是省份名称,也可以是省份编码
setTagList              ⾮必填  List  设置标签内容
setSpeed                ⾮必填  Int  定速推送
setConditions          ⾮必填  AppConditions    限定推送⽤户的条件
推送结果(所有异常返回编码在⽂章结尾)
IPushResult ret = push.pushMessageToApp(message);
Map resmap = Response();
//{result=ok,...}
⼀个测试类(链接通知和应⽤通知)
in.rp.sdk.base.IPushResult;
in.rp.sdk.base.ITemplate;
in.rp.sdk.base.impl.AppMessage;
in.rp.sdk.http.IGtPush;
in.plate.LinkTemplate;
in.plate.NotificationTemplate;
in.plate.style.Style0;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
public class AppPush {
//定义常量, appId、appKey、masterSecret 采⽤本⽂档 "第⼆步获取访问凭证 "中获得的应⽤配置    private static String appId = "duPdyoiHn4926fsCDbuYu8";
private static String appKey = "SWrYn90wZv8jnVT3a68vm";
private static String masterSecret = "ZTqxZR6wSo7tnKum9WQuR6";
private static String masterSecret = "ZTqxZR6wSo7tnKum9WQuR6";
private static String url = "sdk.open.api.igexin/apiex.htm";
/**
* 点击打开链接
*/
@Test
public void testLink(){
IGtPush push = new IGtPush(url, appKey, masterSecret);
// 定义"点击链接打开通知模板",并设置标题、内容、链接
LinkTemplate template = new LinkTemplate();
template.setAppId(appId);
template.setAppkey(appKey);
template.setTitle("通知标题");
template.setText("请填写通知内容AAAAAAAAAAAAAAAAAAAAAAbbbAAAAAAA");
template.setUrl("www.baidu");
toMessage(template);
}
/**
* 点击通知打开应⽤程序
*/
@Test
public void testNotification(){
// 定义"点击链接打开通知模板",并设置标题、内容、链接
NotificationTemplate template = new NotificationTemplate();
template.setAppId(appId);
template.setAppkey(appKey);
// 透传消息设置,1为强制启动应⽤,客户端接收到消息后就会⽴即启动应⽤;2为等待应⽤启动
template.setTransmissionType(1);
template.setTransmissionContent("请输⼊您要透传的内容");
/
/ 设置定时展⽰时间
// template.setDuration("2015-01-16 11:40:00", "2015-01-16 12:24:00");
Style0 style = new Style0();
// 设置通知栏标题与内容
style.setTitle("请输⼊通知栏标题");
style.setText("请输⼊通知栏内容");
// 配置通知栏图标
style.setLogo("icon.png");
// 配置通知栏⽹络图标
style.setLogoUrl("");
// 设置通知是否响铃,震动,或者可清除
style.setRing(true);
style.setVibrate(true);
style.setClearable(true);
template.setStyle(style);
toMessage(template);
}
//发送消息
public void toMessage(ITemplate template){
IGtPush push = new IGtPush(appKey, masterSecret);
List<String> appIds = new ArrayList<String>();
appIds.add(appId);
/
/ 定义"AppMessage"类型消息对象,设置消息内容模板、发送的⽬标App列表、是否⽀持离线发送、以及离线消息有效期(单位毫秒)        AppMessage message = new AppMessage();
message.setData(template);
message.setAppIdList(appIds);
明星代言平面广告message.setOffline(true);
message.setOfflineExpireTime(1000 * 600);
IPushResult ret = push.pushMessageToApp(message);
System.out.Response().toString());
}
}
模板样式
错误代码

本文发布于:2024-09-20 23:46:54,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/613848.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:消息   通知   必填   推送   是否   设置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议