我正在尝试让推送通知正常工作。从客户端应用程序开始,我将FCM插件添加到ionic项目中,导入app.module.ts并将其列在提供者中。
然后在app.component.ts 中
import { FCM } from '@ionic-native/fcm';
constructor(..., public fcm: FCM) {
platform.ready().then(() => {
...
this.fcm.getToken().then(token=>{
console.log(token);
});
this.fcm.onNotification().subscribe(data => {
if(data.wasTapped){
console.log("Received in background");
} else {
console.log("Received in foreground");
};
});
this.fcm.onTokenRefresh().subscribe(token => {
//backend.registerToken(token);
console.log('token changed ', token);
});
this.fcm.subscribeToTopic('general');
});
}
我想在FCM网站上测试一下它是如何工作的。当我通过它的令牌直接将它发送到设备时,它就工作了。当我把它发送到主题为"常规"的设备时,它也能工作。但当我只把它发送给应用程序的用户时,它就不起作用了,尽管它显示我现在有2个用户。示例
然后,我还将FCM服务器密钥添加到Azure通知中心,并想从Azure门户发送一条测试消息,但没有送达。
如果我没有订阅app.component.ts中的任何主题,它也不会收到任何指定给该应用程序所有用户的通知。
对延迟的响应表示歉意。只是从阿金卡上面的回应中跟进这一点。@Szymon,你在你最初的帖子中说过"但当我只把它发送给应用程序的用户时,它不起作用,尽管它显示我现在有2个用户",因为它不能直接与FCM合作,所以通常它不会与Azure通知中心合作,因为Azure通知中心只是通过FCM发送它。因此,您必须首先用FCM识别并隔离问题。