以下是一个使用HTTP V1 API发送推送通知并包含有效载荷的示例代码:
import com.google.auth.oauth2.GoogleCredentials;
import com.google.firebase.FirebaseApp;
import com.google.firebase.FirebaseOptions;
import com.google.firebase.messaging.AndroidConfig;
import com.google.firebase.messaging.AndroidNotification;
import com.google.firebase.messaging.FirebaseMessaging;
import com.google.firebase.messaging.Message;
import com.google.firebase.messaging.Notification;
import java.io.FileInputStream;
import java.io.IOException;
public class FirebaseCloudMessaging {
public static void main(String[] args) throws IOException {
FileInputStream serviceAccount = new FileInputStream("path/to/serviceAccountKey.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.build();
FirebaseApp.initializeApp(options);
// 创建消息
Message message = Message.builder()
.setToken("device_token")
.setNotification(new Notification("标题", "正文"))
.putData("key1", "value1")
.putData("key2", "value2")
.setAndroidConfig(AndroidConfig.builder()
.setPriority(AndroidConfig.Priority.HIGH)
.build())
.build();
// 发送消息
String response = FirebaseMessaging.getInstance().send(message);
System.out.println("成功发送消息:" + response);
}
}
请注意,上面的代码需要使用Firebase Admin SDK的服务帐号密钥(serviceAccountKey.json)。您需要将路径“path/to/serviceAccountKey.json”替换为您自己的密钥文件的路径。
此示例代码使用Firebase Admin SDK的Java库。您需要在项目中包含以下Maven依赖项:
com.google.firebase
firebase-admin
7.3.0
确保将版本号与您正在使用的Firebase Admin SDK版本匹配。
这个示例代码会向指定设备令牌发送推送通知,并在有效载荷中包含键值对数据。您可以根据您的需求自定义通知标题和正文,以及有效载荷数据。
请确保已正确设置Firebase项目和配置Firebase Cloud Messaging以使用HTTP V1 API。