java百度云推送demo_产品介绍_百度云推送_免费专业最精准的移动推送服务平台...

Java SDK 快速开始

Queck start是一个介绍如何使用Java sdk的入门手册,方便用户快速地通过sdk使用百度云推送服务。

Step1注册成为百度开发者

如果已经是百度开发者用户,请直接跳至step2。

关于注册开发者账号,请参见:注册成为百度开发者。

Step2创建开发者应用并开通push服务

如已使用push服务,请直接跳至step4。

开通push服务,请参见:创建应用并开通push服务。

在应用详情页面找到当前应用的API key和Secret key。

API key (AK) : 一个应用的公钥及唯一标识。用于在使用百度开发者服务时标记一个应用,创建后不能修改。

Secret key (SK) : 对应一个AK的密钥,用于在使用百度开发者服务时生成签名或加密数据,开发者可以随时进行重置. 请务必确认SK的内容不会泄露给第三方,否则可能产生安全问题,如确认SK被泄露,请立即在开发者中心进行重置。

API key和Secret key将组成校验对,用于app的合法身份验证。另外,它们也将用于构造BaiduPushClient对象,以便于sdk接口的调用。

Step3下载并安装快速DEMO

如果客户端已安装应用demo,并且demo运行正常,请直接跳至step4。

运行快速Demo,找到当前设备的channelId。

channelId: 设备的唯一标识, 在推送消息时,用于指定消息的目标接收设备。

Step4 开发环境配置

确保使用的javaSE-1.6及兼容版本。

使用类Eclipse的IDE,将libs和output下的jar包添加到工程路径。

jar包使用方式

创建自己的Eclipse项目工程,如图

5cf5a56fa9669e2ecb6b43538a699636.png

将libs文件拷贝到push-demo目录下,将dist文件下的bccs-api-3.0.1.jar拷贝到libs中,如图

d1598e003fdc79ab52c02f108ee81fad.png

将libs下的jar文件添加到classpath下,如图

ebda8293ff59ffb67ad76d418c086b6a.png

将sdk中src下的com文件夹拷贝到push-demo的src目录下,如图

004c20c12fe87133831ae0c370b55fc3.png

将screctKey和apiKey等值替换成自己应用的信息,便可完成自己的推送了。

目前,支持的域名为:“api.tuisong.baidu.com”,“api.push.baidu.com”。

推送域名已经设置完成,开发者也可以修改该值。修改方式:将上述的域名串替换下图中的值。

325102337f7e01d5394b23a1d333a7b5.png

Step5 使用Java SDK推送单播消息

本节以单播推送接口的使用实例介绍Java SDK接口的使用流程,其他接口调用可参考本流程。另外,Java SDK在包com.baidu.yun.push.sample包(下图)给出了所有接口的使用实例,方便用户快速熟悉接口的使用。下载最新Java SDK

b22313c1b7892cd73423ee60f7659a12.png

创建PushKeyPair

String apiKey = “xxxxxxxxxxxxxxxxxxxxxx”;

String secretKey = “xxxxxxxxxxxxxxxxxxxxxx”;

PushKeyPair pair = new PushKeyPair(apiKey,secretKey);创建BaiduPushClient,访问SDK接口

BaiduPushClient pushClient = new BaiduPushClient(pair,

BaiduPushConstants.CHANNEL_REST_URL);注册YunLogHandler,获取本次请求的交互信息

pushClient.setChannelLogHandler (new YunLogHandler () {

@Override

public void onHandle (YunLogEvent event) {

System.out.println(event.getMessage());

}

});设置请求参数,创建请求实例

PushMsgToSingleDeviceRequest request = new PushMsgToSingleDeviceRequest().

addChannelId("xxxxxxxxxxxxxxxxxx").

addMsgExpires(new Integer(3600)). //设置消息的有效时间,单位秒,默认3600 x 5.

addMessageType(1). //设置消息类型,0表示消息,1表示通知,默认为0.

addMessage("{\"title\":\"TEST\",\"description\":\"Hello Baidu push!\"}").

addDeviceType(3); //设置设备类型,3 for android, 4 for ios.执行Http请求,获取返回结果

PushMsgToSingleDeviceResponse response = pushClient.

pushMsgToSingleDevice(request);Http请求结果打印

System.out.println("msgId: " + response.getMsgId()

+ ",sendTime: " + response.getSendTime());异常处理

try{

//设置请求参数,创建请求实例

.......................

//执行Http请求,获取返回结果

.......................

//Http请求结果打印

.......................

} catch (PushClientException e) {

/*ERROROPTTYPE 用于设置异常的处理方式 -- 抛出异常和捕获异常,

*'true' 表示抛出, 'false' 表示捕获。

*/

if (BaiduPushConstants.ERROROPTTYPE) {

throw e;

} else {

e.printStackTrace();

}

} catch (PushServerException e) {

if (BaiduPushConstants.ERROROPTTYPE) {

throw e;

} else {

System.out.println(String.format(

"requestId: %d, errorCode: %d, errorMessage: %s",

e.getRequestId(), e.getErrorCode(), e.getErrorMsg()));

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值