博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
友盟推送 ios服务器
阅读量:6095 次
发布时间:2019-06-20

本文共 2878 字,大约阅读时间需要 9 分钟。

hot3.png

import java.io.IOException;import java.util.Calendar;import java.util.HashMap;import java.util.Locale;import java.util.Map;//import net.sf.json.JSONObject;import com.alibaba.dubbo.common.json.JSONObject;import org.apache.log4j.Logger;import com.alibaba.dubbo.common.json.JSON;import com.alibaba.dubbo.common.json.ParseException;/** * ios实现 * @author shanl * */public class UMengPushIOSImpl implements UMengPushPlatform{	private Map
 pushParams = new HashMap<>(); static final Logger logger = Logger.getLogger(UMengPushIOSImpl.class); public UMengPushIOSImpl(){ pushParams.put("method", Utils.UMENG_METHOD); pushParams.put("url", Utils.UMENG_URL); pushParams.put("appkey.tech", "555b1d7867e58e104a000cd3"); pushParams.put("appMasterSecret.tech", "9d6irworjocdanrgtrzhuspnauojuqnt"); pushParams.put("appkey.user", "555b1e4367e58e3482001d7b"); pushParams.put("appMasterSecret.user", "th9ablyqta3g6oneqsfylx97dvxraxyy"); } public boolean custom(int userType, String alias,String alias_type, String title,String text, Map
 extraParams){ Map
 resMap = new HashMap<>(); JSONObject data = new JSONObject(); data.put("appkey", pushParams.get("appkey."+Utils.toUsertypeStr(userType))); data.put("timestamp", System.currentTimeMillis()+""); data.put("type", "customizedcast"); data.put("alias", alias); data.put("alias_type", alias_type); JSONObject payload  = new JSONObject(); payload.put("aps", title); payload.put("text", text); payload.putAll(extraParams); data.put("payload", payload); JSONObject aps  = new JSONObject(); aps.put("alert", title); payload.put("aps", aps); JSONObject policy = new JSONObject(); policy.put("expire_time", Utils.getExpireTime()); data.put("policy", policy); data.put("description", "description"); data.put("production_mode", "false"); try { String post_body = JSON.json(data); String sign = Utils.sign(new String[]{ pushParams.get("method"), pushParams.get("url"), post_body, pushParams.get("appMasterSecret."+Utils.toUsertypeStr(userType)) }); //{"ret":"SUCCESS","data":{"msg_id":"ul62380143320937907000"}} String res = Utils.sendMsg(pushParams.get("url"),  sign, post_body); resMap = JSON.parse(res, Map.class); logger.info( "userType:"+Utils.toUsertypeStr(userType) +",\nappkey:"+pushParams.get("appkey."+Utils.toUsertypeStr(userType)) +",appMasterSecret:"+pushParams.get("appMasterSecret."+Utils.toUsertypeStr(userType)) +",\n"+pushParams.get("url")+"?sign="+sign +",\npost_body:"+post_body +",\nresMap:"+resMap); } catch (IOException|ParseException e) { throw new RuntimeException(e); } return "SUCCESS".equals(resMap.get("ret")+""); } public void setPushParams(Map
 pushParams){ this.pushParams = pushParams; }}

转载于:https://my.oschina.net/tangcoffee/blog/423931

你可能感兴趣的文章
Office WORD如何取消开始工作右侧栏
查看>>
Android Jni调用浅述
查看>>
CodeCombat森林关卡Python代码
查看>>
第一个应用程序HelloWorld
查看>>
(二)Spring Boot 起步入门(翻译自Spring Boot官方教程文档)1.5.9.RELEASE
查看>>
Android Annotation扫盲笔记
查看>>
React 整洁代码最佳实践
查看>>
聊聊架构设计做些什么来谈如何成为架构师
查看>>
Java并发编程73道面试题及答案
查看>>
iOS知识小集·设置userAgent的那件小事
查看>>
移动端架构的几点思考
查看>>
Tomcat与Spring中的事件机制详解
查看>>
Spark综合使用及用户行为案例区域内热门商品统计分析实战-Spark商业应用实战...
查看>>
初学者自学前端须知
查看>>
Retrofit 源码剖析-深入
查看>>
企业级负载平衡简介(转)
查看>>
ICCV2017 论文浏览记录
查看>>
科技巨头的交通争夺战
查看>>
当中兴安卓手机遇上农行音频通用K宝 -- 卡在“正在通讯”,一直加载中
查看>>
Shell基础之-正则表达式
查看>>