From 24a8d17e007545f7426c48352109aa1a9c6587ee Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 06 五月 2020 12:02:09 +0800
Subject: [PATCH] IOS上线隐藏我的界面的banner与超级会员升级信息

---
 fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java |   94 ++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 76 insertions(+), 18 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
index 85fb259..c44ede6 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/push/XiaoMiPushUtil.java
@@ -1,6 +1,7 @@
 package com.yeshi.fanli.util.push;
 
 import java.io.IOException;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.PostConstruct;
@@ -56,6 +57,9 @@
 	 * @return
 	 */
 	public static String allPushAndroidForXM(MessageInfo info, Map<String, Object> map) {
+		if (Constant.IS_TEST)
+			return null;
+
 		String name = info.getPackageName();
 		if (!Constant.systemCommonConfig.getAndroidPackageName().equalsIgnoreCase(name)
 				&& !Constant.systemCommonConfig.getIosBundleId().equalsIgnoreCase(name)) {
@@ -72,6 +76,7 @@
 
 		Message message = null; // 鍋氬惊鐜紶鏉ョ殑key
 		Builder builder = new Message.Builder().restrictedPackageName(PackageName).title(title).payload(payload)
+				.notifyId((int) (Math.random() * Integer.MAX_VALUE))
 				.description(description).passThrough(0) // 璁剧疆娑堟伅鏄惁閫氳繃閫忎紶鏂瑰紡鑷矨pp,
 															// 1琛ㄧず閫忎紶锛�0琛ㄧず閫氱煡鏍忔秷鎭紙榛樿锛�
 				.notifyType(1); // 璁剧疆閫氱煡绫诲瀷, type绫诲瀷(1-榛樿鎻愮ず闊�, 2-浣跨敤榛樿闇囧姩鎻愮ず,
@@ -95,6 +100,60 @@
 	}
 
 	/**
+	 * 鎵归噺鎺ㄩ��
+	 * 
+	 * @param info
+	 * @param map
+	 * @param regList
+	 *            鏈�澶т釜鏁颁负1000
+	 * @return
+	 */
+	public static String pushBatchAndroidForXM(MessageInfo info, Map<String, Object> map, List<String> regList) {
+		if (Constant.IS_TEST)
+			return null;
+		if (regList == null || regList.size() == 0)
+			return "";
+
+		String name = info.getPackageName();
+		if (!Constant.systemCommonConfig.getAndroidPackageName().equalsIgnoreCase(name)
+				&& !Constant.systemCommonConfig.getIosBundleId().equalsIgnoreCase(name)) {
+			return null;
+		}
+
+		// 浠巌nfo涓彇椤甸潰浼犳潵鐨勫��
+		Constants.useOfficial(); // 鍚姩鎺ㄩ�佹柟娉�
+		String PackageName = info.getPackageName();
+		Sender sender = new Sender(XIAOMI_F_ANDROID_APP_SECERT); // 鐢宠鐨凙ppSecert
+		String title = info.getTitle();
+		String payload = info.getContent();
+		String description = info.getContent();
+
+		Message message = null; // 鍋氬惊鐜紶鏉ョ殑key
+		Builder builder = new Message.Builder().restrictedPackageName(PackageName).title(title).payload(payload)
+				.notifyId((int) (Math.random() * Integer.MAX_VALUE))
+				.description(description).passThrough(0) // 璁剧疆娑堟伅鏄惁閫氳繃閫忎紶鏂瑰紡鑷矨pp,
+															// 1琛ㄧず閫忎紶锛�0琛ㄧず閫氱煡鏍忔秷鎭紙榛樿锛�
+				.notifyType(1); // 璁剧疆閫氱煡绫诲瀷, type绫诲瀷(1-榛樿鎻愮ず闊�, 2-浣跨敤榛樿闇囧姩鎻愮ず,
+								// 3-浣跨敤榛樿led鐏厜鎻愮ず)
+		// 灏唀xtra鏀惧叆MessageInfo瀵硅薄涓紝 寰幆閬嶅巻extra涓殑key 鍜� value
+		if (map != null) {
+			for (String key : map.keySet()) {
+				builder.extra(key, map.get(key).toString());
+			}
+		}
+		message = builder.build();
+		try {
+			Result result = sender.send(message, regList, 3);
+			return result.getMessageId();// 鎴愬姛 杩斿洖娑堟伅鐨処d锛� 澶辫触杩斿洖null
+		} catch (IOException e) {
+			e.printStackTrace();
+		} catch (ParseException e) {
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+	/**
 	 * 
 	 * 鏂规硶璇存槑: 灏忕背鎺ㄩ�佸畨鍗擄紙鍗曟帹锛�
 	 * 
@@ -104,7 +163,8 @@
 	 * @param system
 	 * @return
 	 */
-	public static String singlePushAndroidForXM(MessageInfo info, Map<String, Object> map, System system) {
+	public static String singlePushAndroidForXM(MessageInfo info, Map<String, Object> map, List<String> regIds,
+			System system) {
 		String name = info.getPackageName();
 		if (!Constant.systemCommonConfig.getAndroidPackageName().equalsIgnoreCase(name)
 				&& !Constant.systemCommonConfig.getIosBundleId().equalsIgnoreCase(name)) {
@@ -120,8 +180,10 @@
 		Message message = null; // 鍋氬惊鐜紶鏉ョ殑key
 		Builder builder = new Message.Builder().restrictedPackageName(PackageName).title(title).description(content)
 				.passThrough(0) // 璁剧疆娑堟伅鏄惁閫氳繃閫忎紶鏂瑰紡鑷矨pp, 1琛ㄧず閫忎紶锛�0琛ㄧず閫氱煡鏍忔秷鎭紙榛樿锛�
-				.notifyType(1); // 璁剧疆閫氱煡绫诲瀷, type绫诲瀷(1-榛樿鎻愮ず闊�, 2-浣跨敤榛樿闇囧姩鎻愮ず,
-								// 3-浣跨敤榛樿led鐏厜鎻愮ず)
+				.notifyId((int) (Math.random() * Integer.MAX_VALUE)).notifyType(1); // 璁剧疆閫氱煡绫诲瀷,
+																					// type绫诲瀷(1-榛樿鎻愮ず闊�,
+																					// 2-浣跨敤榛樿闇囧姩鎻愮ず,
+		// 3-浣跨敤榛樿led鐏厜鎻愮ず)
 		// 灏唀xtra鏀惧叆MessageInfo瀵硅薄涓紝 寰幆閬嶅巻extra涓殑key 鍜� value
 		if (map != null) {
 			for (String key : map.keySet()) {
@@ -130,7 +192,8 @@
 		}
 		message = builder.build();
 		try {
-			Result result = sender.sendToAlias(message, uId, 3);
+			Result result = sender.send(message, regIds, 3); // sender.sendToAlias(message,
+																// uId, 3);
 			PushLogHelper.xmInfo("鎺ㄩ�佺粨鏋�:" + result.getReason());
 			return result.getMessageId();
 		} catch (IOException e) {
@@ -148,14 +211,13 @@
 	 * @author mawurui createTime 2018骞�3鏈�8鏃� 涓婂崍9:55:14
 	 * @param info
 	 */
-	public static void pushByHongBao(String alias, System system) {
+	public static void pushByHongBao(List<String> regIds, System system) {
 		MessageInfo info = new MessageInfo();
-		info.setAlias(alias);
 		info.setTitle("鏂板埌绾㈠寘");
 		info.setDescription("绾㈠寘鍒版潵浜�...");
 		JSONObject jsonObject = new JSONObject();
 		jsonObject.put("type", "hongbao");
-		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), system);
+		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), regIds, system);
 	}
 
 	/**
@@ -165,14 +227,13 @@
 	 * @author mawurui createTime 2018骞�3鏈�8鏃� 涓婂崍10:00:16
 	 * @param info
 	 */
-	public static void pushByApply(String alias, System system) {
+	public static void pushByApply(List<String> regIds, System system) {
 		MessageInfo info = new MessageInfo();
-		info.setAlias(alias);
 		info.setTitle("鎻愮幇鐢宠");
 		info.setDescription("鎻愮幇瀹℃牳涓�...");
 		JSONObject jsonObject = new JSONObject();
 		jsonObject.put("type", "cash");
-		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), system);
+		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), regIds, system);
 	}
 
 	/**
@@ -184,9 +245,8 @@
 	 * @param state
 	 * @param system
 	 */
-	public static void pushByExtract(String alias, int state, System system) {
+	public static void pushByExtract(List<String> regIds, int state, System system) {
 		MessageInfo info = new MessageInfo();
-		info.setAlias(alias);
 		if (state == 0) {
 			info.setTitle("鎻愮幇鎴愬姛");
 			info.setDescription("鎮ㄦ湁涓�绗斾氦鏄擄紝宸叉彁鐜版垚鍔燂紒");
@@ -199,9 +259,8 @@
 		}
 		JSONObject jsonObject = new JSONObject();
 		jsonObject.put("type", "cash");
-		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), system);
+		XiaoMiPushUtil.singlePushAndroidForXM(info, JsonUtil.parseData(jsonObject), regIds, system);
 	}
-
 
 	/**
 	 * 
@@ -214,7 +273,7 @@
 		// jsonXm 杞崲涓� map
 		JSONObject mapXm = JSONObject.fromObject(json);
 		String android = allPushAndroidForXM(info, mapXm);
-		LogHelper.userInfo("瀹夊崜鎺ㄩ�佹祴璇曪細" + android);
+		LogHelper.userInfo("灏忕背鎺ㄩ�侊細" + android);
 		pushRecord.setAndroidPushId(android);
 		if (android != null) {
 			return 1;
@@ -223,12 +282,11 @@
 		}
 	}
 
-	public static void pushZNX(Long uid, String title, String content, String msgId) {
+	public static void pushZNX(List<String> regIds, String title, String content, String msgId) {
 		// 灏忕背寮�濮嬫帹閫�
 		MessageInfo info = new MessageInfo();
 		info.setActivty(
 				String.format("%s.ui.BrowserActivity", Constant.systemCommonConfig.getAndroidBaseactivityName()));
-		info.setAlias(uid + "");
 		info.setTitle(title);
 		info.setContent(content);
 		info.setPackageName(Constant.systemCommonConfig.getAndroidPackageName());
@@ -245,7 +303,7 @@
 		contentJson.put("createTime", java.lang.System.currentTimeMillis());
 		json.put("content", contentJson);
 		JSONObject mapXm = JSONObject.fromObject(json);
-		XiaoMiPushUtil.singlePushAndroidForXM(info, mapXm, null);
+		XiaoMiPushUtil.singlePushAndroidForXM(info, mapXm, regIds, null);
 	}
 
 }

--
Gitblit v1.8.0