最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

小米推送Java代碼

 更新時間:2019年01月28日 09:18:09   作者:富貴穩(wěn)中求  
今天小編就為大家分享一篇關(guān)于小米推送Java代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

maven

 <dependency>
  <groupId>com.xiaomi</groupId>
  <artifactId>json-simple</artifactId>
  <version>1.1.1</version>
 </dependency>
 <dependency>
  <groupId>com.xiaomi</groupId>
  <artifactId>MiPush_SDK_Server</artifactId>
  <version>2.2.18</version>
 </dependency>

java util

package com.tjg99.commons.util;
import com.xiaomi.xmpush.server.Constants;
import com.xiaomi.xmpush.server.Message;
import com.xiaomi.xmpush.server.Sender;
import com.xiaomi.xmpush.server.Sender.BROADCAST_TOPIC_OP;
import net.sf.json.JSONObject;
import org.json.simple.parser.ParseException;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * 小米推送工具類
 **/
public class MiPushUtil {
  private static String APP_SECRET_KEY_ANDROID = "asdasdasdasdasdasd";
  private static String APP_SECRET_KEY_IOS = "asdasdasdasdasd==";
  private static String MY_PACKAGE_NAME = "com.tjg99";
  /**
   * 向所有設(shè)備發(fā)送推送
   * @param messagePayload 消息
   * @param title     消息標題
   * @param description  消息描述
   * @param ads_type    消息類型
   * @param ads_links   消息鏈接
   * @throws IOException
   * @throws ParseException
   **/
  public static void sendAllBroadcast(String messagePayload, String title, String description, String ads_type,
                    String ads_links) throws IOException, ParseException {
    Constants.useOfficial();
    Map map = new HashMap();
    map.put("ads_type", ads_type);
    map.put("ads_links", ads_links);
    Message message = new Message.Builder().title(title).description(description).payload(messagePayload)
        .extra("data", JSONObject.fromObject(map).toString()).restrictedPackageName(MY_PACKAGE_NAME)
        .notifyType(1).passThrough(0) // 使用默認提示音提示
        .build();
    //安卓推送
    Sender sender_android = new Sender(APP_SECRET_KEY_ANDROID);
    // 根據(jù)topicList做并集運算, 發(fā)送消息到指定一組設(shè)備上
    sender_android.broadcastAll(message, 3);
    //ios推送
    Sender sender_ios = new Sender(APP_SECRET_KEY_IOS);
    // 根據(jù)topicList做并集運算, 發(fā)送消息到指定一組設(shè)備上
    sender_ios.broadcastAll(message, 3);
  }
  /**
   * 指定標簽推送(推送指定類型用戶)
   * @param messagePayload 消息
   * @param title     消息標題
   * @param description  消息描述
   * @param ads_type    消息類型
   * @param ads_links   消息鏈接
   * @param topicList   指定推送類型
   * @throws IOException
   * @throws ParseException
   **/
  public static void sendBroadcast(String messagePayload, String title, String description, String ads_type,
                   String ads_links, List<String> topicList) throws IOException, ParseException {
    Constants.useOfficial();
    Map map = new HashMap();
    map.put("ads_type", ads_type);
    map.put("ads_links", ads_links);
    Message message = new Message.Builder().title(title).description(description).payload(messagePayload)
        .extra("data", JSONObject.fromObject(map).toString()).restrictedPackageName(MY_PACKAGE_NAME)
        .notifyType(1).passThrough(0) // 使用默認提示音提示
        .build();
    // 安卓推送
    Sender sender_android = new Sender(APP_SECRET_KEY_ANDROID);
    // 根據(jù)topicList做并集運算, 發(fā)送消息到指定一組設(shè)備上
    sender_android.multiTopicBroadcast(message, topicList, BROADCAST_TOPIC_OP.UNION, 3);
    // ios推送
 //Constants.useSandbox();
    Sender sender_ios = new Sender(APP_SECRET_KEY_IOS);
    // 根據(jù)topicList做并集運算, 發(fā)送消息到指定一組設(shè)備上
    sender_ios.multiTopicBroadcast(message, topicList, BROADCAST_TOPIC_OP.UNION, 3);
  }
  /**
   * 指定alias推送(單個或多個)
   * @param messagePayload 消息
   * @param title     消息標題
   * @param description  消息描述
   * @param ads_type    消息類型
   * @param ads_links   消息鏈接
   * @param aliasList   指定alias
   * @throws IOException
   * @throws ParseException
   **/
  public static void sendMessageToAliases(String messagePayload, String title, String description, String ads_type,
                      String ads_links, List<String> aliasList) throws IOException, ParseException {
    Constants.useOfficial();
    Map map = new HashMap();
    map.put("ads_type", ads_type);
    map.put("ads_links", ads_links);
    Message message = new Message.Builder().title(title).description(description).payload(messagePayload)
        .extra("data", JSONObject.fromObject(map).toString()).restrictedPackageName(MY_PACKAGE_NAME)
        .notifyType(1).passThrough(0) // 使用默認提示音提示
        .build();
    //安卓推送
    Sender sender_android = new Sender(APP_SECRET_KEY_ANDROID);
    sender_android.sendToAlias(message, aliasList, 3);
    //ios推送
 //Constants.useSandbox();
    Sender sender_ios = new Sender(APP_SECRET_KEY_IOS);
    sender_ios.sendToAlias(message, aliasList, 3);
  }
}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • 如何將java或javaweb項目打包為jar包或war包

    如何將java或javaweb項目打包為jar包或war包

    本文主要介紹了如何將java或javaweb項目打包為jar包或war包,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-07-07
  • Java實現(xiàn)數(shù)據(jù)庫連接池的方法

    Java實現(xiàn)數(shù)據(jù)庫連接池的方法

    這篇文章主要介紹了Java實現(xiàn)數(shù)據(jù)庫連接池的方法,涉及java數(shù)據(jù)庫連接池的創(chuàng)建、連接、刷新、關(guān)閉及狀態(tài)獲取的常用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Java并發(fā)編程包中atomic的實現(xiàn)原理示例詳解

    Java并發(fā)編程包中atomic的實現(xiàn)原理示例詳解

    這篇文章主要給大家介紹了關(guān)于Java并發(fā)編程包中atomic的實現(xiàn)原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-09-09
  • 基于Spring Data的AuditorAware審計功能的示例代碼

    基于Spring Data的AuditorAware審計功能的示例代碼

    這篇文章主要介紹了基于Spring Data的AuditorAware審計功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 實例詳解Spring Boot實戰(zhàn)之Redis緩存登錄驗證碼

    實例詳解Spring Boot實戰(zhàn)之Redis緩存登錄驗證碼

    本章簡單介紹redis的配置及使用方法,本文示例代碼在前面代碼的基礎(chǔ)上進行修改添加,實現(xiàn)了使用redis進行緩存驗證碼,以及校驗驗證碼的過程。感興趣的的朋友一起看看吧
    2017-08-08
  • idea Gradle 控制臺中文亂碼的解決

    idea Gradle 控制臺中文亂碼的解決

    通過IDEA執(zhí)行g(shù)radle的任務(wù)時,在終端的輸出出現(xiàn)中文亂碼,本文主要介紹了idea Gradle 控制臺中文亂碼的解決,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • Springboot添加支付接口

    Springboot添加支付接口

    這篇文章主要介紹了springboot如何添加支付接口,幫助大家更好得理解和學習使用springboot框架,感興趣的朋友可以了解下
    2021-04-04
  • Spring容器注入bean的五種方法逐個解析

    Spring容器注入bean的五種方法逐個解析

    依賴注入(Dependency Injection)和控制反轉(zhuǎn)(Inversion of Control)是同一個概念。具體含義是:當某個角色(可能是一個Java實例,調(diào)用者)需要另一個角色(另一個Java實例,被調(diào)用者)的協(xié)助時,在傳統(tǒng)的程序設(shè)計過程中,通常由調(diào)用者來創(chuàng)建被調(diào)用者的實例
    2023-02-02
  • Springboot整合GuavaCache緩存過程解析

    Springboot整合GuavaCache緩存過程解析

    這篇文章主要介紹了springboot整合GuavaCache緩存過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 在Java中以及Spring環(huán)境下操作Redis的過程

    在Java中以及Spring環(huán)境下操作Redis的過程

    文章介紹了在Java和Spring環(huán)境下操作Redis的基本方法,在Java環(huán)境下,使用Maven創(chuàng)建項目并導入Jedis依賴,通過配置端口轉(zhuǎn)發(fā)訪問Redis,文章總結(jié)了Redis的基本命令和類別,如String、list、hash、set和zset,感興趣的朋友跟隨小編一起看看吧
    2025-03-03

最新評論

桐庐县| 阜宁县| 宁乡县| 赫章县| 赞皇县| 吴桥县| 屏东县| 新源县| 惠来县| 利辛县| 拜城县| 金沙县| 望都县| 福泉市| 丹东市| 余庆县| 乡宁县| 通海县| 青岛市| 科技| 衡山县| 隆德县| 东阿县| 扬州市| 吉隆县| 兴隆县| 休宁县| 大竹县| 子洲县| 红原县| 商河县| 海城市| 财经| 大英县| 依兰县| 晋中市| 凤庆县| 曲靖市| 宝山区| 封丘县| 保亭|