有没有支持 Firebase Cloud Messaging 的 java APNs 库,我找到了 Pushy,但它看起来不支持 FCM。
我面临的挑战是能够通过 Firbase Cloud Messaging 从我自己的应用服务器而不是从 Firebase 控制台发送 iOS、Android、Web 推送通知。到目前为止,我有一些代码可以在 Android 设备上使用 FCM,我已经对其进行了测试,并且可以在我的 Android 设备上接收通知。(我还为 iOS 测试过 Pushy,它工作正常,但我需要能够通过 将通知发送到我的 iOS 设备https://fcm.googleapis.com/fcm/send
)
try{
Sender sender = new FCMSender(serverKey);
Notification notification = new Notification.Builder("").title("New Message").body("").build();
Message message = new Message.Builder().notification(notification).addData("data", "Hello World!").build();
Result result = sender.send(message, "deviceToken", 1);
System.out.println("Result: " + result.toString());
} catch(Exception e){
e.printStackTrace();
}
并且FCMSender
是扩展 GCM Sender 类但指向端点的自定义类https://fcm.googleapis.com/fcm/send
public class FCMSender extends Sender {
public FCMSender(String key){
super(key);
}
@Override
protected HttpURLConnection getConnection(String url) throws IOException{
String fcmUrl = "https://fcm.googleapis.com/fcm/send";
return (HttpURLConnection) new URL(fcmUrl).openConnection();
}
}
我可以在 iOS 设备的 Pushy 库中以某种方式执行相同的技巧以发送到端点https://fcm.googleapis.com/fcm/send
,如果是,那么如何?如果没有,如开头所述,是否有支持 FCM 的 java APNs 库。