atitit.极光消息推送服务器端开发实现推送  jpush v3. 总结o7p

1. 推送所设计到底功能1

1.1. 内容压缩1

1.2. 多引擎1

2. reg  ,设置appkey and pwdkey1

3. 下载server  sdk   v31

4. push推送样例1

5. Code3

1. 推送所设计到底功能

1.1. 内容压缩

1.2. 多引擎

2. reg  ,设置appkey and pwdkey

3. 下载server  sdk   v3

https://github.com/jpush/jpush-api-java-client

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

4. push推送样例

以下片断来自项目代码里的文件:cn.jpush.api.examples.PushExample

JPushClient jpushClient = new JPushClient(masterSecret, appKey, 3);

// For push, all you need do is to build PushPayload object.

PushPayload payload = buildPushObject_all_all_alert();

try {

PushResult result = jpushClient.sendPush(payload);

LOG.info("Got result - " + result);

} catch (APIConnectionException e) {

// Connection error, should retry later

LOG.error("Connection error, should retry later", e);

} catch (APIRequestException e) {

// Should review the error, and fix the request

LOG.error("Should review the error, and fix the request", e);

LOG.info("HTTP Status: " + e.getStatus());

LOG.info("Error Code: " + e.getErrorCode());

LOG.info("Error Message: " + e.getErrorMessage());

}

进行推送的关键在于构建一个 PushPayload 对象。以下示例一般的构建对象的用法。

5. Code

Pushx。Java

private static void single_test(final double i) throws APIConnectionException,

APIRequestException {

core.execMeth_Ays(new Runnable() {

@Override

public void run() {

String r = "";

try {

r = new pushX().push(".", 1099);

} catch (APIConnectionException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.println(String.valueOf(i) + "::" + r);

}

}, " threadName");

}

public String push(final String txt, final Object... target)

throws APIConnectionException, APIRequestException {

// attilax 老哇的爪子 X5042 o7m // k_56_44 o80 老哇的爪子 Attilax

core.log("---- o8q14 add act n seruinfo before  txt:" + txt);

core.log("----add act n seruinfo before len:"

+ String.valueOf(txt.length()));

final String s = jpushCompressor.kmprs(txt);

core.log("----add act n seruinfo aft len:" + String.valueOf(s.length()));

logger.info(txt + "\r\ntarget:" + StringUtils.join(target, ",") + " ");

// new com.attilax.tryX<String>() {

// @Override public String $$(Object t) throws Exception {

// attilax 老哇的爪子 2_q_9 o86

setInvokeTimes();

try {

PushExample.SendPush_msgFmt(s, core.toStrArr(target));

} finally {

// this.respMsg=r;

this.sendMsg = PushExample.sendMsg_thrdloc.get();

}

// catch (APIConnectionException e) {

// respMsg="APIConnectionException";

// }

// catch (APIRequestException e) {

// respMsg=

// }

// return null;

// }

// }.$("");

new com.attilax.tryX<String>() {

@Override

public String $$(Object t) throws Exception {

// attilax 老哇的爪子 2_q_9 o86

// PushExample.SendPush(s, core.toStrArr(target));

return null;

}

}.$("");

String r = PushExample.rzt.get();

return r;

}

atitit.极光消息推送服务器端开发实现推送  jpush v3. 总结o7p的更多相关文章

  1. java服务端集成极光消息推送--详细开发步骤

    1.极光推送账号准备 要使用极光消息推送必须先在官方网站上注册账号,并添加应用. 产品介绍:https://docs.jiguang.cn/jpush/guideline/intro/ 注册开发者账号 ...

  2. 最新的极光推送服务器端代码(java服务器后台向手机端自定义推送消息)

    一共两个类 一个Jdpush  一个JpushClientUtil 代码如下   注解都写的很清楚 package com.sm.common.ajpush; import org.slf4j.Log ...

  3. 【Android应用开发】 推送原理解析 极光推送使用详解 (零基础精通推送)

    作者 : octopus_truth 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/45046283 推送技术产生场景 : -- ...

  4. .NET对接极光消息推送

    什么是APP消息推送? 很多手机APP会不定时的给用户推送消息,例如一些新闻APP会给用户推送用户可能感兴趣的新闻,或者APP有更新了,会给用户推送是否选择更新的消息等等,这就是所谓的"消息 ...

  5. iOS 极光推送 如何点击推送消息跳转页面

    假如你已经集成完了极光,恰好有这个问题不知如何解决,可以看看这篇文章,这篇是针对远程通知的,本地通知大同小异吧. 根据我项目的要求,极光推送跳转指定页面分为两种情况:app在后台情况和app在杀死的情 ...

  6. iOS开发 iOS10推送必看(基础篇)

    iOS10更新之后,推送也是做了一些小小的修改,下面我就给大家仔细说说.希望看完我的这篇文章,对大家有所帮助.   原文链接   一.简单入门篇---看完就可以简单适配完了相对简单的推送证书以及环境的 ...

  7. pushlet实现服务器端向客户端推送信息

    使用Pushlet来实现服务器端向客户端推送信息 1.   实现方式: 有两种实现方式: 1.         通过配置文件来实现定时的从服务器端向客户端推送信息 2.         通过API主动 ...

  8. iOS开发 iOS10推送必看

    iOS10更新之后,推送也是做了一些小小的修改,下面我就给大家仔细说说.希望看完我的这篇文章,对大家有所帮助. 一.简单入门篇---看完就可以简单适配完了 相对简单的推送证书以及环境的问题,我就不在这 ...

  9. 使用Pushlet来实现服务器端向客户端推送信息

        使用Pushlet来实现服务器端向客户端推送信息 1.   实现方式: 有两种实现方式: 1.         通过配置文件来实现定时的从服务器端向客户端推送信息 2.         通过A ...

随机推荐

  1. 【最小割】【Dinic】bzoj3275 Number

    每个点拆点,分别向源/汇连a[i]的边,满足条件的相互连INF的边,答案为sum-maxflow*2. 因为若有几个点不能同时被选,我们要贪心地选择其中和尽量大的部分,这可以由最小割来保证. #inc ...

  2. 【左偏树】BZOJ2809-[APIO2012]dispatching

    [题目大意] 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Master.除了 Master以外,每名忍者都有且仅有一个上级.为保密,同 ...

  3. 工作流Activiti新手入门学习路线整理

    写在前面: 最近项目中使用到了工作流,虽然此部分不是自己需要完成的,但是也涉及到了要调用写的接口.正好有时间,就了解下,以便之后能在其他项目中用到时,不至于什么都不知道什么都不了解. 这里就主要整理下 ...

  4. inline-block 前世今生(转)

    曾几何时,display:inline-block 已经深入「大街小巷」,随处可见 「display:inline-block; *display:inline; *zoom:1; 」这样的代码.如今 ...

  5. python3中的range函数

    奇怪的现象 在paython3中 print(range(10)) 得出的结果是 range(0,10) ,而不是[0,1,2,3,4,5,6,7,8,9] ,为什么呢? 官网原话: In many ...

  6. javascript模块化有什么意义?

    以前,所有的javascript都写在一个文件里,方便只加载一个文件就可以了,但是代码越来越多,必须分成多个文件加载,类似: <script src="1.js">&l ...

  7. 用Emmet写CSS3属性会自动添加前缀

    CSS3的很多属性都包含浏览器厂商前缀,用Emmet写CSS3属性会自动添加前缀,比如输入trs 会展开为: -webkit-transition: prop time; -moz-transitio ...

  8. 64位的centos6.9的vnc-sever的安装及桌面环境安装

    1.VNC (Virtual Network Computer)是虚拟网络计算机的缩写.VNC 是在基于 UNIX 和 Linux 操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 ...

  9. OpenGL ES 3.0之Fragment buffer objects(FBO)详解 (转)

    http://www.cnblogs.com/salam/p/4957250.html 片段操作图 这篇文章将介绍从写入帧缓冲和读取帧缓冲的方式. Buffers(缓冲) OpenGL ES支持三种缓 ...

  10. struts2设置文件上传大小

    利用struts2想要设置或者限制上传文件的大小,可以在struts.xml配置文件里面进行如下配置: <constant name="struts.multipart.maxSize ...