android极光推送原理

前几天项目需要推送功能,朋友推荐使用极光推送,分享一下demo, 极光官网https://www.jiguang.cn注册账号及创建应用,这里面就有对应的APPkey、secert “推送设置”列举Android 设置,app是需要唯一的应用包名 极光推送需要的pom依赖 cn.featherfly bccs-api 3.0

前几天项目需要推送功能,朋友推荐使用极光推送,分享一下demo,

极光官网https://www.jiguang.cn注册账号及创建应用,这里面就有对应的APPkey、secert

44fde1f38f84011a96aafa5d34705d0c.png

“推送设置”列举Android 设置,app是需要唯一的应用包名

d169d0999c91424ee4949b859083c304.png

极光推送需要的pom依赖

cn.featherfly

bccs-api

3.0.1

cn.jpush.api

jpush-client

3.2.17

cn.jpush.api

jiguang-common

1.1.1

io.netty

netty-all

4.1.6.Final

compile

把极光账号放单独文件

app.key=000000000

master.secert=000000000

public class JiGuangPush {

// 设置账号的app_key、masterSecret,这里我是从配置文件获取

private static String APP_KEY = ResourceUtil.getConfigByName("app.key");

private static String MASTER_SECRET = ResourceUtil.getConfigByName("master.secert");

public static int jpushAndroid(Mapparm) {

parm.put("msg","this is test massage");

JPushClient jpushClient = new JPushClient(MASTER_SECRET, APP_KEY);

//推送的关键,构造一个payload

PushPayload payload = PushPayload.newBuilder()

//指定android平台的用户

.setPlatform(Platform.android())

//你app中的所有用户

.setAudience(Audience.all())

// .setAudience(Audience.registrationId(parm.get("id")))//registrationId指定用户

.setNotification(Notification.android(parm.get("msg"), "this title", parm))

//发送内容

.setOptions(Options.newBuilder().setApnsProduction(false).build())

.setMessage(Message.content(parm.get("msg")))//自定义信息

.build();

try {

PushResult pu = jpushClient.sendPush(payload);

JSONObject json= JSONObject.fromObject(pu);

if (json.get("statusCode")=="0"){

// System.out.println(12131);

return 1;

}

} catch (APIConnectionException e) {

e.printStackTrace();

} catch (APIRequestException e) {

e.printStackTrace();

}

return 0;

}

使用main调用

public class demo {

public static void main(String[] args) {

//设置推送参数

Mapparm = new HashMap();

//这里的id是,移动端集成极光并登陆后,极光用户的rid

parm.put("id", "140fe1da9ecc3f36ba8");

//这里输入你要推送的信息

parm.put("msg","this is test msg");

long t1=System.currentTimeMillis();

for ( int i=0;i<1;i++){

int j= JiGuangPush.jpushAndroid(parm);

System.out.println(j);

}

System.out.println(System.currentTimeMillis()-t1);

}

}

完成

知秋君
上一篇 2024-09-11 14:36
下一篇 2024-09-11 14:02

相关推荐