我创建了一个Android应用来获取通知数据和基于此的应有任务。我的服务器代码是Java Spring。我遵循了一个教程,并能够在Java中创建代码以发送FCM通知。当我使用邮递员在本地系统上进行测试时,FCM消息已成功发送到具有注册FCM ID的应用程序。
但是我将应用程序托管在Google服务器中,并且在邮递员中使用服务器IP尝试相同的api时遇到了NotRegistered
错误。为什么会这样?
有什么主意吗?
Java代码是:
@Service
public class AndroidPushNotificationsService {
private static final String FIREBASE_SERVER_KEY =<KEY HERE>";
private static final String FIREBASE_API_URL = "https://fcm.googleapis.com/fcm/send";
@Async
public CompletableFuture<String> send(HttpEntity<String> entity) {
RestTemplate restTemplate = new RestTemplate();
ArrayList<ClientHttpRequestInterceptor> interceptors = new ArrayList<>();
interceptors.add(new HeaderRequestInterceptor("Authorization", "key=" + FIREBASE_SERVER_KEY));
interceptors.add(new HeaderRequestInterceptor("Content-Type", "application/json"));
restTemplate.setInterceptors(interceptors);
String firebaseResponse = restTemplate.postForObject(FIREBASE_API_URL, entity, String.class);
return CompletableFuture.completedFuture(firebaseResponse);
}