<强> maven 强>
& lt; dependency> & lt; groupId> com.xiaomi & lt; artifactId> json-simple & lt; version> 1.1.1 & lt;/dependency> & lt; dependency> & lt; groupId> com.xiaomi & lt; artifactId> MiPush_SDK_Server & lt; version> 2.2.18 & lt;/dependency>
<强> java util 强>
包com.tjg99.commons.util; 进口com.xiaomi.xmpush.server.Constants; 进口com.xiaomi.xmpush.server.Message; 进口com.xiaomi.xmpush.server.Sender; 进口com.xiaomi.xmpush.server.Sender.BROADCAST_TOPIC_OP; 进口net.sf.json.JSONObject; 进口org.json.simple.parser.ParseException; 进口java.io.IOException; 进口java.util.HashMap; 进口并不知道; 进口java.util.Map;/* * *小米推送工具类 * */公开课MiPushUtil { 私有静态字符串APP_SECRET_KEY_ANDROID=" asdasdasdasdasdasd”; 私有静态字符串APP_SECRET_KEY_IOS=" asdasdasdasdasd=="; 私有静态字符串MY_PACKAGE_NAME=" com.tjg99”;/* * *向所有设备发送推送 * @param messagePayload消息 * @param标题消息标题 * @param描述消息描述 * @param ads_type消息类型 * @param ads_links消息链接 * @throws IOException * @throws ParseException * */messagePayload公共静态孔隙sendAllBroadcast(字符串,字符串标题、字符串描述字符串ads_type, 字符串ads_links)抛出IOException ParseException { Constants.useOfficial (); 地图地图=new HashMap (); 地图。把(“ads_type”, ads_type); 地图。把(“ads_links”, ads_links); 消息消息=new Message.Builder () .title(标题).description(描述).payload (messagePayload) .extra(“数据”,JSONObject.fromObject (map) .toString ()) .restrictedPackageName (MY_PACKAGE_NAME) .notifyType (1) .passThrough(0)//使用默认提示音提示 .build ();//安卓推送 发送方sender_android=new发送者(APP_SECRET_KEY_ANDROID);//根据topicList做并集运算,发送消息到指定一组设备上 sender_android。broadcastAll(信息,3);//ios推送 发送方sender_ios=new发送者(APP_SECRET_KEY_IOS);//根据topicList做并集运算,发送消息到指定一组设备上 sender_ios。broadcastAll(信息,3); }/* * *指定标签推送(推送指定类型用户) * @param messagePayload消息 * @param标题消息标题 * @param描述消息描述 * @param ads_type消息类型 * @param ads_links消息链接 * @param topicList指定推送类型 * @throws IOException * @throws ParseException * */messagePayload公共静态孔隙sendBroadcast(字符串,字符串标题、字符串描述字符串ads_type, 字符串ads_links ListtopicList)抛出IOException ParseException { Constants.useOfficial (); 地图地图=new HashMap (); 地图。把(“ads_type”, ads_type); 地图。把(“ads_links”, ads_links); 消息消息=new Message.Builder () .title(标题).description(描述).payload (messagePayload) .extra(“数据”,JSONObject.fromObject (map) .toString ()) .restrictedPackageName (MY_PACKAGE_NAME) .notifyType (1) .passThrough(0)//使用默认提示音提示 .build ();//安卓推送 发送方sender_android=new发送者(APP_SECRET_KEY_ANDROID);//根据topicList做并集运算,发送消息到指定一组设备上 sender_android。multiTopicBroadcast(消息、topicList BROADCAST_TOPIC_OP。联盟,3);//ios推送//Constants.useSandbox (); 发送方sender_ios=new发送者(APP_SECRET_KEY_IOS);//根据topicList做并集运算,发送消息到指定一组设备上 sender_ios。multiTopicBroadcast(消息、topicList BROADCAST_TOPIC_OP。联盟,3); }/* * *指定别名推送(单个或多个) * @param messagePayload消息 * @param标题消息标题 * @param描述消息描述 * @param ads_type消息类型 * @param ads_links消息链接 * @param aliasList指定别名 * @throws IOException * @throws ParseException * */messagePayload公共静态孔隙sendMessageToAliases(字符串,字符串标题、字符串描述字符串ads_type, 字符串ads_links List aliasList)抛出IOException ParseException { Constants.useOfficial (); 地图地图=new HashMap (); 地图。把(“ads_type”, ads_type); 地图。把(“ads_links”, ads_links); 消息消息=new Message.Builder () .title(标题).description(描述).payload (messagePayload) .extra(“数据”,JSONObject.fromObject (map) .toString ()) .restrictedPackageName (MY_PACKAGE_NAME) .notifyType (1) .passThrough(0)//使用默认提示音提示 .build ();//安卓推送 发送方sender_android=new发送者(APP_SECRET_KEY_ANDROID); sender_android。sendToAlias(消息aliasList 3);//ios推送//Constants.useSandbox (); 发送方sender_ios=new发送者(APP_SECRET_KEY_IOS); sender_ios。sendToAlias(消息aliasList 3); } } 小米推送Java代码