Bladeren bron

添加推送工具类

tianboguang 3 jaren geleden
bovenliggende
commit
ed1af68df4

+ 7 - 0
4dkankan-utils-app-push/pom.xml

@@ -52,6 +52,13 @@
             <artifactId>javax.mail</artifactId>
             <version>1.5.4</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.google.firebase</groupId>
+            <artifactId>firebase-admin</artifactId>
+            <version>6.8.1</version>
+        </dependency>
+
     </dependencies>
 
 </project>

+ 45 - 0
4dkankan-utils-app-push/src/main/java/com/fdkankan/push/PushMsgUtil.java

@@ -0,0 +1,45 @@
+package com.fdkankan.push;
+
+import com.google.auth.oauth2.GoogleCredentials;
+import com.google.firebase.FirebaseApp;
+import com.google.firebase.FirebaseOptions;
+import com.google.firebase.messaging.FirebaseMessaging;
+import lombok.extern.slf4j.Slf4j;
+
+import java.io.FileInputStream;
+
+/**
+ * Created by Hb_zzZ on 2020/7/27.
+ */
+@Slf4j
+public class PushMsgUtil {
+
+    /**
+     * 海外谷歌推送
+     */
+    public static void googlePushMsg(String refreshTokenJsonFileUrl, String token, String title, String text, String url){
+        try{
+            FileInputStream refreshToken = new FileInputStream(refreshTokenJsonFileUrl);
+
+            FirebaseOptions options = new FirebaseOptions.Builder()
+                    .setCredentials(GoogleCredentials.fromStream(refreshToken))
+                    .setDatabaseUrl("https://dkankan-pro.firebaseio.com")
+                    .build();
+
+            FirebaseApp.initializeApp(options);
+
+            com.google.firebase.messaging.Message message = com.google.firebase.messaging.Message.builder()
+                    .putData("titile", title)
+                    .putData("text", text)
+                    .putData("url", url)
+                    .setNotification(new com.google.firebase.messaging.Notification(title, text))
+                    .setToken(token)
+                    .build();
+            String response = FirebaseMessaging.getInstance().send(message);
+            log.info("Successfully sent message: " + response);
+        }catch (Exception e ){
+            e.printStackTrace();
+        }
+
+    }
+}

+ 1 - 0
pom.xml

@@ -10,6 +10,7 @@
         <module>4dkankan-utils-redis</module>
         <module>4dkankan-utils-fyun</module>
         <module>4dkankan-utils-sms</module>
+        <module>4dkankan-utils-app-push</module>
     </modules>
 
     <groupId>com.fdkankan</groupId>