集成推送平台 JAVA 版本 SDK JavaPushSdk 发布说明 ( 请使用最新版本 ) 中央仓库获取 MVN Repository 或者 Central Repository 直接下载获取 Java Server SDK 更新日志 [ ]V

Similar documents
魅族推送平台接入文档 (JAVA-SDK)

魅族开放平台 PUSH 系统 JAVA 版本 SDK JavaPushSdk 发布说明 ( 请使用最新版本 ) 中央仓库获取 MVN Repository 或者 Central Repository 直接下载获取 Java Server SDK 更新日志 [ ]V

推送平台开放接口

推送平台开放接口

上述字符串的 MD5 值即为签名的值 (32 位小写 ) 将签名值放在请求的参数中例如 sign=md5_sign 服务端 SDK 调用 API 的应用的私钥 Secret Key 为 appsecret /** parammap 请求参数 secret 密钥 *

1005 错误, 请参考 API 文档 1006 签名认证失败 不合法 appkey 不合法 不能为空 应用被加入黑名单 应用推送速率过快 透传超过限制 接口签名规范 请求分别是 k1 k2 k3, 它们的值分别是

获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

此文章将会根据不同厂商的 SDK 的接入方式逐步分析, 进而梳理出最为精简的接入方式, 同时说明各个接入配置的细节问题 一接入准备工作 关于组件的基本配置将会全部打包到 aar 中的 AndroidManifest 中, 用户只需要手动配置一些与包名相关的权限配置 1.1 小米 混淆配置 基于 aa

停止混流接口 请注意 : 该功能需要联系 ZEGO 技术支持开通 1 接口调用说明 http 请求方式 : POST/FORM, 需使用 https 正式环境地址 access_token=access_token (http

OPPO 推送平台服务端 API 修订记录 : 版本号修订人修订日期修订描述 V0.1 宫建涛 初始版本 V0.2 宫建涛 部分 API 修改 V0.3 宫建涛 修改返回码 V0.4 宫建涛 修改推送统计接口 V

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

优斗士微分销产品使用指南

新・解きながら学ぶJava

集成推送平台 PushSDK 设计文档 此文档在于向开发者介绍魅族统一推送平台 PushSDK 如何对各个厂家的 PushSDK 进行整合以及我们在统一接口设计中遵循的规则, 由于各个厂家的 API 接口功能差异巨大我们只对各个厂商共用的接口进行统一封装, 当然你也可以直接使用厂商提供的接口 Ups

在设备联网情况下, 到达率可达到 99.9% 三 基本架构 四 组件说明 Push Service:Flyme OS 上的一个常驻系统服务, 在网络可达的情况下时刻保持与推送服务器的长连接 Push SDK: 用于接收 Push Service 透传过来的消息并回调给应用, 它包括 Android

跨領域學位學程

Microsoft Word - 01.DOC

3.1 num = 3 ch = 'C' 2

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

新美大酒店开放平台SDK(.NET版)使用说明.pages

Guava学习之Resources

EJB-Programming-3.PDF

魅族推送平台接入文档 (Push-Demo)

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

Partition Key: 字 符 串 类 型, 表 示 当 前 Entity 的 分 区 信 息 这 个 Property 对 于 Table Service 自 动 纵 向 和 横 向 扩 展 至 关 重 要 Row Key: 字 符 串 类 型, 在 给 定 Partition Key 的

EJB-Programming-4-cn.doc

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

RxJava

本文档旨在说明如果快速的接入集成推送 SDK, 快速实现小米, 华为, 魅族的推送接入, 有关详细的设计文档参考集成推送设计说明文档 准备工作 编译本项目, 配置完 android sdk 后执行以下命令, 或者你可以将本工程导入到 android studio 中./gradlew clean a

1. 访 问 最 新 发 行 公 告 信 息 jconnect for JDBC 访 问 最 新 发 行 公 告 信 息 最 新 版 本 的 发 行 公 告 可 以 从 网 上 获 得 若 要 查 找 在 本 产 品 发 布 后 增 加 的 重 要 产 品 或 文 档 信 息, 请 访

chp6.ppt



概述

API参考

目 录 概 述 背 景 社 会 背 景 行 业 背 景 需 求 分 析..6 3 优 势 分 析 资 源 优 势 品 牌 优 势 技 术 优 势 用 户 体 验.....

深圳市跨境易电子商务有限公司

CHAPTER 1

Microsoft Word - 正文.doc

}; "P2VTKNvTAnYNwBrqXbgxRSFQs6FTEhNJ", " " string imagedata; if(0!= read_image("a.jpg",imagedata)) { return -1; } string rsp; ytopen_sdk m_sd

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

云数据库 RDS SDK

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

(HMI) IO A

國家圖書館典藏電子全文

untitled

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

概述

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

有没有免费的交友喂喂助理不是滴滴叫鸡,不是滴滴约炮,不是滴滴约妹、约

untitled

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

電機工程系認可證照清單 /7/1

获取 Access Token 1 基础概念 access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要妥善保存,access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新

3 Driver do Microsoft Access (*.mdb) hisdata IFIX 1.4

bnb.PDF

<4D F736F F D BEC7A67EABD7B9B4A5CDB3E6BF57A9DBA5CDC2B2B3B B0EABBDA E646F63>

南華大學數位論文

1.5招募说明书(草案)

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

目 录 第 一 部 分 档 案 局 概 况 一 主 要 职 责 二 部 门 决 算 单 位 构 成 第 二 部 分 档 案 局 2016 年 度 部 门 预 算 表 一 2016 年 度 市 级 部 门 收 支 预 算 总 表 二 2016 年 度 市 级 部 门 支 出 预 算 表 三 2016

2015 年 度 收 入 支 出 决 算 总 表 单 位 名 称 : 北 京 市 朝 阳 区 卫 生 局 单 位 : 万 元 收 入 支 出 项 目 决 算 数 项 目 ( 按 功 能 分 类 ) 决 算 数 一 财 政 拨 款 一 一 般 公 共 服 务 支 出 二

PowerPoint 演示文稿

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

使用Cassandra和Spark 2.0实现Rest API服务

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

Java

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

Microsoft Word - 第3章.doc

云搜

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

浙江师范大学2014年度毕业生就业质量报告

目 录 监 管 资 讯 2016 年 全 国 保 险 监 管 工 作 会 议 召 开...3 协 会 动 态 赤 峰 保 险 行 业 协 会 召 开 数 据 统 计 和 信 息 宣 传 总 结 表 彰 会 议...5 赤 峰 市 保 险 行 业 协 会 秘 书 处 召 开 2015 年 度 述 职

同 时, 采 取 提 供 新 闻 线 索 和 素 材 安 排 专 访 等 方 式 主 动 为 新 闻 媒 体 服 务, 为 采 访 报 道 活 动 创 造 便 利 条 件 建 设 网 络 信 息 发 布 平 台 2013 年 9 月 开 通 中 央 纪 委 监 察 部 网 站,2015 年 1 月

公務員服務法第13條相關解釋彙整表

大陸教育部等6個部門公佈「現代職業教育體系建設規劃 ( 年)」規劃到2015年初步形成現代職業教育體系框架,到2020年基本建成「中國」特色現代職業教育體系

资 讯 速 递 台 基 于 大 数 据 的 学 校 督 导 评 估 系 统 建 设 上 海 市 闵 行 区 人 民 政 府 教 育 督 导 室 ( 摘 要 ) 闵 行 教 育 在 深 化 教 育 改 革 探 索 管 办 评 分 离 的 背 景 下, 把 教 育 督 导 评 估 系 统 建 设 作 为

B1

時間軸上的竹蓮記憶 學務主任 黃雅彙 我不是竹蓮國小的畢業校友 但對於身為新竹人的我來 說 仔細回想起來 似乎和竹蓮有著一種特別的緣分 對竹蓮國小最初的印象是在小學的時候 猶記得年幼的 我經過一段時日的啦啦隊舞蹈訓練後 老師便帶著我們從學 校步行到竹蓮國小來參加比賽 一踏入竹蓮校門 映入眼簾 的是黑

B1

Microsoft Word - 临政办发6.doc

untitled

JavaIO.PDF

64 [ 46 ] (p297) 1924 :? [ 47 ] (p570) ; ; ; ; ; ; ; ; ; ; ; [ 11 ]; [ 35 ] [ 49 ] [ 32 ] ( ) [ 48 ] (p 425) [ 50 ] (p 670 6

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

untitled

ebook 86-15

中 文 摘 要 智 慧 型 手 機 由 於 有 強 大 的 功 能, 以 及 優 渥 的 便 利 性, 還 能 與 網 路 保 持 隨 時 的 鏈 結 與 同 步 更 新, 因 此 深 受 廣 大 消 費 者 喜 愛, 當 然, 手 機 遊 戲 也 成 為 現 代 人 不 可 或 缺 的 娛 樂 之

<4D F736F F D20D6D0CEC4B7A88C57B454CABF8C57CEBBD593CEC4D28EB9A0>

T-UPA V1.0.0 (2018-7) 统一推送通道层接口规范 Interface Standard for Unified Push Channel Layer

Microsoft Word - SDD.doc

untitled


报 告 简 要 丽 江 古 城 位 于 云 南 省 西 北 部, 始 建 于 宋 末 元 初 古 城 西 北 方 30 公 里 处 是 海 拔 5596 米 的 玉 龙 雪 山 及 第 四 世 冰 川 遗 迹 丽 江 古 城 在 南 宋 时 期 就 初 具 规 模, 已 有 八 九 百 年 的 历

有 不 良 企 图 时, 就 要 立 即 躲 开 他 当 你 实 在 难 以 分 辨 对 方 是 真 心 实 意 还 是 虚 情 假 意 时, 可 向 父 母 老 师 或 周 围 较 成 熟 和 亲 近 的 朋 友 请 教, 请 他 们 帮 你 分 析 情 况, 做 出 判 断 此 时, 拒 绝 帮

《垓下歌》 項羽

內 容 及 試 題 範 例 術 科 評 量 規 範 評 分 標 準 一 (, 工 具 與 材 料 由 本 校 提 供, 考 生 無 須 自 備 ) ( 一 ) 基 本 焊 接 工 具 操 作 及 辨 識 基 本 手 工 具 設 備 ( 二 ) 測 驗 時 間 50 分 鐘 ( 三 ) 工 具 與 材

交 通 部 公 路 總 局 新 竹 區 監 理 所 104 年 第 2 次 契 約 服 務 員 甄 試 試 場 序 號 試 場 序 號 姓 名 A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 A11 A12 A13 A14 A15 A16 張 齡 文 王 美 蕙 吳

美 国 研 究

玻璃幕墙工程质量检验标准 JGJ/T

Transcription:

集成推送平台 JAVA 版本 SDK JavaPushSdk 发布说明 ( 请使用最新版本 ) 中央仓库获取 MVN Repository 或者 Central Repository 直接下载获取 Java Server SDK 更新日志 [2017-12-06]V1.0.0.20171206 1.0.0 标准版 定义 推送服务 (IFlymeUpsPush) 调用该类实例的方法来推送消息, 构造函数说明如下 : 必填 appsecret String 是 null 注册应用 appsecret usessl Boolean 否 false 是否使用 https 接口调用 :true 使用 https 连接,false 使用 http 连接 通知栏消息体 (Message) 推送消息实体 ( 抽象类 ) 子类 VarnishedMessage UnVarnishedMessage 说明 通知栏消息体 透传消息体 通知栏消息 (VarnishedMessage) 必 填 appid Long 是 null 注册应用 appid title String 是 null 推送标题, 字数限制 1~32 content String 是 null 推送内容, 字数限制 1~100 clicktype int 否 0 点击动作 (0," 打开应用 "),(1," 打开应用页面 "),(2," 打开 URI 页面 "),(3, " 应用客户端自定义 "),(4, " 打开自定 Intent 1/12

URI"); 非必填, 值为 0 url String 否 null URI 页面地址, clicktype 为打开 URI 页面时, 必填, 长度 限制 1000byte parameters JSONObject 否 null 透传参数 JSON 格式, 非必填 activity String 否 null customattribute String 否 null customuri String 否 null isoffline Boolean 否 true validtime int 否 24 pushtimetype int 否 0 starttime Date 否 null 应用页面地址, clicktype 为打开应用页面时, 格式 pkg.activity eg: com.meizu.upspushdemo.testactivity 必填 应用客户端自定义内容, clicktype 为应用客户端自定义时, 必填, 长度限制 1000byte 打开自定 Intent URI clicktype=4, 必填, 长度限制 1000 字节 eg:upspushscheme://com.meizu.upspush/notify_detail? title=ups title&content=ups content 是否进离线消息, (false 否 true 是 ) 非必填, 值为 true 有效时长 (1~72 小时内的正整数 ), isoffline 值为 true 时, 必填, 值的范围 1~72 定时推送 (0, " 即时 "),(1, " 定时 "), 只对全部用户推送生效 任务定时开始时间, 非必填,pushTimeType 为 True 必填 只对全部用户推送生效 isfixspeed Boolean 否 false 是否定速推送, 非必填, 值为 False fixspeedrate Long 否 0 定速速率, isfixspeed 为 true 时, 必填 issuspend Boolean 否 true isclearnoticebar Boolean 否 true 是否通知栏悬浮窗显示 (true 显示,false 不显示 ) 非必填, True 是否可清除通知栏 (true 可以,false 不可以 ), 非必填, true isfixdisplay Boolean 否 false 是否定时展示 非必填, false fixdisplaytime (Date,Date) 否 (null,null) 定时展示开始, 结束时间 fixdisplay 为 true 时, 必填, 并且开始时间要晚于结束时间 vibrate Boolean 否 true 震动 (false 关闭 true 开启 ), 非必填, true lights Boolean 否 true 闪光 (false 关闭 true 开启 ), 非必填, true sound Boolean 否 true 声音 (false 关闭 true 开启 ), 非必填, true 透传消息 (UnVarnishedMessage) 2/12

必 填 默 认 appid Long 是 null 注册应用 appid title String 否 null 推送标题, 任务推送建议填写, 方便数据查询, 字数限制 1~32 content String 是 null 推送内容, 必填, 字数限制 3800byte 以内 isoffline Boolean 否 true 是否进离线消息, 非必填, 为 true validtime int 否 24 有效时长 (1~72 小时内的正整数 ), isoffline 值为 true 时, 必填, 值的范围 1--72 pushtimetype int 否 0 定时推送 (0, " 即时 "),(1, " 定时 "), 只对全部用户推送生效 starttime Date 否 null 任务定时开始时间, pushtimetype 为 1 必填 只对全部用户推 送生效 isfixspeed Boolean 否 false 是否定速推送, 非必填, 值为 false fixspeedrate Long 否 0 定速速率 isfixspeed 为 true 时, 必填 接口返回值 (ResultPack) 方法名称 code() String 接口响应码 Comment() String 接口响应 value() T 接口响应内容 errorcode() Enum 接口响应异常枚举详见 ErrorCode 消息推送结果 (PushResult) 方法名称 getmsgid() String 推送消息 ID, 用于推送流程明细排查 getresptarget() Map 推送目标结果状态 (KEY: 推送响应码 VALUE: 响应码对应的目标用户 ) logs Map app 渠道推送日志, 用于问题排查 (KEY: 渠道 value:log) 接口响应码定义 (ErrorCode) 名称 Code Commen UNKNOWN_ERROR -1 未知错误 SUCCESS 200 成功 SYSTEM_ERROR 1001 系统错误 3/12

SYSTEM_BUSY 1003 服务器忙 PARAMETER_ERROR 1005 参数错误, 请参考 API 文档 INVALID_SIGN 1006 签名认证失败 INVALID_APPLICATION_ID 110000 appid 不合法 INVALID_APPLICATION_KEY 110001 appkey 不合法 UNSUBSCRIBE_PUSHID 110002 pushid 未注册 INVALID_PUSHID 110003 pushid 非法 PARAM_BLANK 110004 参数不能为空 APP_REQUEST_EXCEED_LIMIT 110010 应用请求频率过快 APP_PUSH_TIME_EXCEED_LIMIT 110051 超过该应用的次数限制 APP_REQUEST_PUSH_LIMIT 110019 超过该应用每天推送次数限制 INVALID_APPLICATION_PACKAGENAME 110031 packagename 不合法 INVALID_TASK_ID 110032 非法的 taskid INVALID_APPLICATION_SECRET 110033 非法的 appsecret DIRECT_OUT_LIMIT 110053 透传超过限制 推送响应码定义 (PushResponseCode) 名称 Code Commen RSP_NO_AUT 201 没有权限, 服务器主动拒绝 RSP_DB_ERROR 501 推送消息失败 (db_error) RSP_INTERNAL_ERROR 513 推送消息失败 RSP_SPEED_LIMIT 518 推送超过配置的速率 RSP_OVERFLOW 519 推送消息失败服务过载 RSP_UNSUBSCRIBE_PUSHID 110002 pushid 未订阅 ( 包括推送开关关闭的设备 ) RSP_INVALID_PUSHID 110003 pushid 非法 RSP_UNSUBSCRIBE_ALIAS 110005 别名未订阅 ( 包括推送开关关闭的设备 ) 推送 (PushType) 枚举 STATUSBAR Enum 通知栏消息 DIRECT Enum 透传消息 4/12

渠道 (CP) 枚举 MEIZU Enum 魅族 XIAOMI Enum 小米 HUAWEI Enum 华为 任务推送统计 ( 天 )(DailyPushStatics) 名称 date Date 日期 pushedno Long 推送数 acceptno Long 接收数 clickno Long 点击数 接口说明 非任务推送 向指定的 pushid 推送消息 注 : 推送平台使用 pushid 来标识每个独立的用户, 每一台终端上每一个 app 拥有一个独立的 pushid 应用场景 场景 1: 查找手机业务需要远程定位位置, 可发送消息指令到对应的设备 场景 2: 社区用户回帖消息提醒, 用户对发表的帖子有最新回复时, 消息提醒发帖者 pushid 通知栏消息推送 (pushmessage) 接口说明 接口 ResultPack<PushResult> pushmessage(varnishedmessage message, List<String> pushids) ResultPack<PushResult> pushmessage(varnishedmessage message, List<String> pushids, int retries) 说明 推送通知栏 消息 推送通知栏 消息 5/12

参数说明 必需 message VarnishedMessage 是 null 推送消息 pushids List 是 null 推送目标, 一批最多不能超过 1000 个 retries int 否 0 超时 or 异常重试次数 返回值 PushResult msgid; 推送消息 ID, 用于推送流程明细排查 resptarget; 推送目标结果状态 (key: 推送响应码 value: 响应码对应的目标用户 ) 注 : 只返回不合法 超速以及推送失败的目标用户, 业务一般对超速的 pushid 处理 示例 /** * 通知栏消息推送 (pushmessage) * @throws Exception */ @Test public void testvarnishedmessagepush() throws Exception { // 推送对象 IFlymeUpsPush push = new IFlymeUpsPush(APP_SECRET_KEY); // 组装消息 VarnishedMessage message = new VarnishedMessage.Builder().appId(appId).title("Java SDK 推送标题 ").content(" 消息内容 ").clicktype(clicktype.custom_uri.getdesc()) //.activity("com.meizu.upspushdemo.testactivity").customuri("upspushscheme://com.meizu.upspush/notify_detail? title=ups title&content=ups content") //.parameters(param) //.url("https://www.baidu.com/") //.customattribute(" 客户端自定义参数 ").build(); // 目标用户 List<String> pushids = new ArrayList<String>(); pushids.add("pushid_1"); pushids.add("pushid_2"); // 1 调用推送服务 ResultPack<PushResult> result = push.pushmessage(message, pushids); 6/12

if (result.issucceed()) { // 2 调用推送服务成功 ( 其中 map 为设备的具体推送结果, 一般业务针对超速的 code 做处理 ) PushResult pushresult = result.value(); String msgid = pushresult.getmsgid();// 推送消息 ID, 用于推送流程明细排查 Map<String, List<String>> targetresultmap = pushresult.getresptarget();// 推送结果, 全部推送成功, 则 map 为 empty System.out.println("push result:" + pushresult); if (targetresultmap!= null &&!targetresultmap.isempty()) { System.err.println("push fail token:" + targetresultmap); else { // 调用推送接口服务异常 eg: appid appkey 非法 推送消息非法... // result.code(); // 服务异常码 // result.comment();// 服务异常 System.out.println(String.format("pushMessage error code:%s comment:%s", result.code(), result.comment())); pushid 透传消息推送 (pushmessage) 接口说明 接口 ResultPack<PushResult> pushmessage(unvarnishedmessage message, List<String> pushids) ResultPack<PushResult> pushmessage(unvarnishedmessage message, List<String> pushids, int retries) 说明 推送透传 消息 推送透传 消息 参数说明 必需 message UnVarnishedMessage 是 null 推送消息 pushids List 是 null 推送目标, 一批最多不能超过 1000 个 retries int 否 0 超时 or 异常重试次数 返回值 PushResult msgid; 推送消息 ID, 用于推送流程明细排查 resptarget; 推送目标结果状态 (key: 推送响应码 value: 响应码对应的目标用户 ) 注 : 只返回不合法 超速以及推送失败的目标用户, 业务一般对超速的 pushid 处理 7/12

示例 /** * 透传消息推送 (pushmessage) * @throws Exception */ @Test public void testunvarnishedmessagepush() throws Exception { // 推送对象 IFlymeUpsPush push = new IFlymeUpsPush(APP_SECRET_KEY); // 组装透传消息 UnVarnishedMessage message = new UnVarnishedMessage.Builder().appId(appId).title("Java SDK 透传推送标题 ").content("java Sdk 透传推送内容 ").isoffline(true).validtime(10).build(); // 目标用户 List<String> pushids = new ArrayList<String>(); pushids.add("pushid_1"); pushids.add("pushid_2"); // 1 调用推送服务 ResultPack<PushResult> result = push.pushmessage(message, pushids); if (result.issucceed()) { // 2 调用推送服务成功 ( 其中 map 为设备的具体推送结果, 一般业务针对超速的 code 做处理 ) PushResult pushresult = result.value(); String msgid = pushresult.getmsgid();// 推送消息 ID, 用于推送流程明细排查 Map<String, List<String>> targetresultmap = pushresult.getresptarget();// 推送结果, 全部推送成功, 则 map 为 empty System.out.println("push result:" + pushresult); if (targetresultmap!= null &&!targetresultmap.isempty()) { System.err.println("push fail token:" + targetresultmap); else { // 调用推送接口服务异常 eg: appid appkey 非法 推送消息非法... // result.code(); // 服务异常码 // result.comment();// 服务异常 System.out.println(String.format("pushMessage error code:%s comment:%s", result.code(), result.comment())); 别名通知栏消息推送 (pushmessagebyalias) 8/12

接口说明 接口 ResultPack<PushResult> pushmessagebyalias(varnishedmessage message, List<String> alias) ResultPack<PushResult> pushmessagebyalias(varnishedmessage message, List<String> alias, int retries) 说明 推送通知 栏消息 推送通知 栏消息 参数说明 必需 message VarnishedMessage 是 null 推送消息 alias List 是 null 推送目标, 一批最多不能超过 1000 个 retries int 否 0 超时 or 异常重试次数 返回值 PushResult msgid; 推送消息 ID, 用于推送流程明细排查 resptarget; 推送目标结果状态 (key: 推送响应码 value: 响应码对应的目标用户 ) 注 : 只返回不合法 超速以及推送失败的目标用户 示例 /** * 别名通知栏消息推送 (pushmessage) * * @throws Exception */ @Test public void testvarnishedmessagepushbyalias() throws Exception { // 推送对象 IFlymeUpsPush push = new IFlymeUpsPush(APP_SECRET_KEY); // 组装消息 VarnishedMessage message = new VarnishedMessage.Builder().appId(appId).title("Java SDK 推送标题 ").content("java SDK 推送内容 ").build(); // 目标用户 List<String> alias = new ArrayList<String>(); alias.add("alias1"); alias.add("alias2"); 9/12

// 1 调用推送服务 ResultPack<PushResult> result = push.pushmessagebyalias(message, alias); // 2 处理推送结果 if (result.issucceed()) { // 2 调用推送服务成功 ( 其中 map 为设备的具体推送结果, 一般业务针对超速的 code 做处理 ) PushResult pushresult = result.value(); String msgid = pushresult.getmsgid();// 推送消息 ID, 用于推送流程明细排查 Map<String, List<String>> targetresultmap = pushresult.getresptarget();// 推送结果, 全部推送成功, 则 map 为 empty System.out.println("push result:" + pushresult); if (targetresultmap!= null &&!targetresultmap.isempty()) { System.err.println("push fail token:" + targetresultmap); else { // 调用推送接口服务异常 eg: appid appkey 非法 推送消息非法... // result.code(); // 服务异常码 // result.comment();// 服务异常 System.out.println(String.format("pushMessage error code:%s comment:%s", result.code(), result.comment())); 别名透传消息推送 (pushmessagebyalias) 接口说明 接口 ResultPack<PushResult> pushmessagebyalias(unvarnishedmessage message, List<String> alias) ResultPack<PushResult> pushmessagebyalias(unvarnishedmessage message, List<String> alias, int retries) 说明 推送透传 消息 推送透传 消息 参数说明 必需 message UnVarnishedMessage 是 null 推送消息 alias List 是 null 推送目标, 一批最多不能超过 1000 个 retries int 否 0 超时 or 异常重试次数 返回值 10/12

PushResult msgid; 推送消息 ID, 用于推送流程明细排查 resptarget; 推送目标结果状态 (key: 推送响应码 value: 响应码对应的目标用户 ) 注 : 只返回不合法 超速以及推送失败的目标用户 示例 /** * 别名透传推送 * * @throws Exception */ @Test public void testunvarnishedmessagepushbyalias() throws Exception { // 推送对象 IFlymeUpsPush push = new IFlymeUpsPush(APP_SECRET_KEY); // 组装透传消息 UnVarnishedMessage message = new UnVarnishedMessage.Builder().appId(appId).title("Java SDK 透传推送标题 ").content("java Sdk 透传推送内容 ").build(); // 目标用户 List<String> alias = new ArrayList<String>(); alias.add("alias"); alias.add("alias2"); // 1 调用推送服务 ResultPack<PushResult> result = push.pushmessagebyalias(message, alias); if (result.issucceed()) { // 2 调用推送服务成功 ( 其中 map 为设备的具体推送结果, 一般业务针对超速的 code 做处理 ) PushResult pushresult = result.value(); String msgid = pushresult.getmsgid();// 推送消息 ID, 用于推送流程明细排查 Map<String, List<String>> targetresultmap = pushresult.getresptarget();// 推送结果, 全部推送成功, 则 map 为 empty System.out.println("push result:" + pushresult); if (targetresultmap!= null &&!targetresultmap.isempty()) { System.err.println("push fail token:" + targetresultmap); else { // 调用推送接口服务异常 eg: appid appkey 非法 推送消息非法... // result.code(); // 服务异常码 // result.comment();// 服务异常 System.out.println(String.format("pushMessage error code:%s comment:%s", result.code(), result.comment())); 11/12

获取应用推送统计 (dailypushstatics) 接口说明 接口 public ResultPack<List<DailyPushStatics>> dailypushstatics(long appid, Date starttime, Date endtime) 说明 获取应用推 送统计 参数说明 必需 appid Long 是 null 应用 ID starttime Date 是 null 开始日期 endtime Date 是 null 结束日期 返回值 List<DailyPushStatics> 示例 /** * 获取任务统计结果 * * @throws IOException */ @Test public void testdailypushstatics() throws IOException { // 推送对象 IFlymePush push = new IFlymePush(APP_SECRET_KEY); Date starttime = DateUtils.str2Date("2017-06-03", "yyyy-mm-dd"); Date endtime = DateUtils.str2Date("2017-06-10", "yyyy-mm-dd"); ResultPack<List<DailyPushStatics>> resultpack = push.dailypushstatics(appid, starttime, endtime); System.out.println(resultPack); 12/12