From 573c491b4a1ba60e12a5678a01c1546c0077c1ee Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 30 七月 2019 09:07:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java | 34 +++++++++++++++++++--------------- 1 files changed, 19 insertions(+), 15 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java index 2b6b780..507261a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/push/IOSPushUtil.java @@ -8,19 +8,18 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import org.yeshi.utils.HttpUtil; import com.google.gson.Gson; import com.yeshi.fanli.controller.admin.PushController; -import com.yeshi.fanli.entity.system.System; import com.yeshi.fanli.entity.xinge.MessageInfo; import com.yeshi.fanli.entity.xinge.PushRecord; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.log.PushLogHelper; -import com.yeshi.fanli.service.inter.config.SystemService; +import com.yeshi.fanli.service.inter.config.BusinessSystemService; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.factory.IOSPushFactory; -import org.yeshi.utils.HttpUtil; import javapns.devices.Device; import javapns.devices.implementations.basic.BasicDevice; @@ -36,12 +35,12 @@ private static IOSPushUtil iosPushUtil; @Autowired - private SystemService systemService; + private BusinessSystemService businessSystemService; @PostConstruct public void init() { iosPushUtil = this; - iosPushUtil.systemService = this.systemService; + iosPushUtil.businessSystemService = this.businessSystemService; } /** @@ -57,6 +56,9 @@ */ public static String allPushIOS(List<String> deviceTokenList, MessageInfo info, String url, int type) throws Exception { + + if (Constant.IS_TEST) + return null; Gson gson = new Gson(); PushLogHelper.iosInfo("IOS鎺ㄩ�佽澶囨暟涓�:" + deviceTokenList.size()); @@ -103,6 +105,9 @@ } // 鍒嗙粍鎺ㄩ�� 姣�50涓澶囦负涓�缁� + InputStream certificate = IOSPushUtil.class.getClassLoader() + .getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢 + String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd(); if (tokenList != null && tokenList.size() > 0) { int pageSize = 50; int page = tokenList.size() % pageSize == 0 ? tokenList.size() / pageSize : tokenList.size() / pageSize + 1; @@ -111,7 +116,7 @@ int end = start + pageSize; if (end > tokenList.size()) end = tokenList.size(); - pushIOS(tokenList.subList(start, end), json); + pushIOS(tokenList.subList(start, end), json, certificate, certificatePassword); } } @@ -119,14 +124,12 @@ return null; } - private static String pushIOS(List<String> deviceTokenList, JSONObject json) throws Exception { + public static String pushIOS(List<String> deviceTokenList, JSONObject json, InputStream certificate, + String certificatePWD) throws Exception { List<String> tokenList = new ArrayList<String>(); for (String deviceToken : deviceTokenList) { tokenList.add(deviceToken); } - InputStream certificate = IOSPushUtil.class.getClassLoader() - .getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢 - String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd();// 姝ゅ娉ㄦ剰瀵煎嚭鐨勮瘉涔﹀瘑鐮佷笉鑳戒负绌哄洜涓虹┖瀵嗙爜浼氭姤閿� while (json.toString().getBytes().length > 256) { // 棣栧厛鍓婂噺鍐呭锛岀劧鍚庡墛鍑忔爣棰� String title = json.optJSONObject("aps").optJSONObject("alert").optString("title"); @@ -151,11 +154,9 @@ PushNotificationManager pushManager = new PushNotificationManager(); // true锛氳〃绀虹殑鏄骇鍝佺嚎涓婂彂甯冩帹閫佹湇鍔� false锛氳〃绀虹殑鏄骇鍝佹祴璇曟帹閫佹湇鍔� if (Constant.IS_TEST) - pushManager.initializeConnection( - new AppleNotificationServerBasicImpl(certificate, certificatePassword, false)); + pushManager.initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePWD, false)); else - pushManager - .initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePassword, true)); + pushManager.initializeConnection(new AppleNotificationServerBasicImpl(certificate, certificatePWD, true)); List<Device> deviceList = new ArrayList<Device>(); for (String token : tokenList) { @@ -219,7 +220,10 @@ * @throws Exception */ public static void executePushIOS(List<String> tokenList, JSONObject json) throws Exception { - pushIOS(tokenList, json); + InputStream certificate = IOSPushUtil.class.getClassLoader() + .getResourceAsStream("certificate/pushCertificate.p12"); // 璇诲彇.p12鏂囦欢 + String certificatePassword = Constant.systemCommonConfig.getIosPushCertificatePwd(); + pushIOS(tokenList, json, certificate, certificatePassword); } /** -- Gitblit v1.8.0