Tag: 谷歌云消息传递

Firebase云消息传递订阅多个令牌到一个主题

我有一个应用程序,允许用户创build一个帐户。 然后我将用户信息存储在Firebase数据库中。 我也存储所有的用户设备令牌,以防他们使用多个设备与一个帐户(iPhone,iPad,Android等)。 当用户订阅主题时,我希望能够将所有关联的设备令牌订阅到该主题,而不仅仅是他们当前正在使用的设备。 订阅主题时是否有指定标记的方法,以便他们可以在其所有设备上接收主题通知。

Firebase云消息传递开发和发布configuration文件

我从Google云消息传递到Firebase云消息传递。 有了GCM,我不得不select沙箱选项。 如此处所述: https : //developers.google.com/cloud-messaging/ios/client#obtain_a_registration_token请参阅第3点。 要以debugging模式接收推送通知,我必须做这样的事情 [[GGLInstanceID sharedInstance] startWithConfig:instanceIDConfig]; _registrationOptions = @{kGGLInstanceIDRegisterAPNSOption:deviceToken, kGGLInstanceIDAPNSServerTypeSandboxOption:@YES}; 要从AppStore接收推送通知(例如TestFlight),我不得不说: kGGLInstanceIDAPNSServerTypeSandboxOption:@NO}; 现在我无法在Firebase中find这样的内容。 首先,我认为伟大的没有改变这些愚蠢的价值观了。 但是现在我不再在我的TestFlight应用程序中收到任何推送通知。 在我的debugging控制台,当我在设备上debugging时,一个输出是这样的: <FIRInstanceID/WARNING> APNS Environment in profile: development 这对本地debugging很有用,但在TestFlight中是不需要的。 (我不知道TestFlight应用程序是否会发生这种情况,因为我没有它们的控制台。) 所以我的问题是:有人知道我是否可以在Firebase中手动更改这个Sandbox选项? 谢谢, 西蒙

当您将应用服务器从GCM迁移到FCM时,旧客户端会发生什么?

我正在考虑迁移到FCM。 事情的客户端是相当简单的,你移动一些代码,并完成它。 但是,在应用程序服务器上,我也需要支持较老的客户端,原因很明显。 我需要知道将GCM项目迁移到FCM时会发生什么情况。 FCM是否会自动将消息转发给较早的基于GCM的客户端? 或者我需要将每条消息发送两次,一次发送到FCM,一次发送到GCM? 这将如何影响特定于实现的内容,例如从Firebase的Web控制台发送的消息? 有什么细节我应该知道?

Firebase收到推送通知时未收到popup窗口

import Firebase import FirebaseInstanceID import FirebaseMessaging func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { registerForPushNotifications(application) FIRApp.configure() // Add observer for InstanceID token refresh callback. NSNotificationCenter .defaultCenter() .addObserver(self, selector: #selector(AppDelegate.tokenRefreshNotificaiton), name: kFIRInstanceIDTokenRefreshNotification, object: nil) // Override point for customization after application launch. return true } func registerForPushNotifications(application: UIApplication) { let settings: UIUserNotificationSettings = UIUserNotificationSettings(forTypes: […]

FCM后台通知无法在iOS中使用

我在iOS上遇到FCM通知问题。 当我的应用程序处于前台( appdelegate中的appdelegate被触发)时,我收到了成功的通知,但是当应用程序处于后台(我没有在iOS的通知托盘中看到任何内容)时,我没有收到通知。 所以我觉得问题是FCM发出的信息格式。 我的服务器发送给FCM的json格式如下: { "data":{ "title":"mytitle", "body":"mybody", "url":"myurl" }, "notification":{ "title":"mytitle", "body":"mybody" }, "to":"/topics/topic" } 正如你所看到的,在我的json中有两个块:一个通知块(在后台接收通知)和一个数据块(在前台接收通知)。 我不明白为什么后台通知没有收到。 我怀疑是关于块的顺序(如果我把“数据”块放在“通知”块之前,是一个问题?)。 编辑:关于这个问题的更多信息。 这是我的appdelegate.swift: @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? // Application started func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject : AnyObject]?) -> Bool { let pushNotificationSettings: UIUserNotificationSettings = UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil) […]

是否可以使用Firebase云消息传递(FCM)直接从设备发送PushNotifications到特殊的UDID?

我想在数据库中保留所有注册ID(推令牌),并从iPhone发送通知给用户。 我尝试了这样的事情,但没有得到任何通知。 func sendPNMessage() { FIRMessaging.messaging().sendMessage( ["body": "hey"], to: TOKEN_ID, withMessageID: "1", timeToLive: 108) } 我做错了什么,或者根本不可能呢?