を示していない。Firebase背景と非アクティブな通知iOSの10でプッシュ通知のためのFCMを使用してiOSの
これは、私たち自身のAPIを介して通知をプッシュした後に呼び出さなってきsnipperです:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
// If you are receiving a notification message while your app is in the background,
// this callback will not be fired till the user taps on the notification launching the application.
// TODO: Handle data of notification
[[FIRMessaging messaging] appDidReceiveMessage:userInfo];
if (userInfo[kGCMMessageIDKey]) {
NSLog(@"Message ID: %@", userInfo[kGCMMessageIDKey]);
}
completionHandler(UIBackgroundFetchResultNewData);
if(application.applicationState == UIApplicationStateBackground){
[[TWMessageBarManager sharedInstance] showMessageWithTitle:@"Bacgkround"
description:@"Wassup"
type:TWMessageBarMessageTypeSuccess callback:^{
}];
}
else if(application.applicationState == UIApplicationStateActive){
[[TWMessageBarManager sharedInstance] showMessageWithTitle:@"Active"
description:@"Wassup"
type:TWMessageBarMessageTypeSuccess callback:^{
}];
}
else if(application.applicationState == UIApplicationStateInactive){
[[TWMessageBarManager sharedInstance] showMessageWithTitle:@"InActive"
description:@"Wassup"
type:TWMessageBarMessageTypeSuccess callback:^{
}];
}
}
アプリ上記のメソッドが呼び出され、UIApplicationStateActiveのcaseが実行され、サードパーティライブラリを使用してポップアップが表示されます。ホームボタンを押して通知を押すと、上記のメソッドが呼び出され、UIApplicationStateBackgroundが実行されますが、どのように通知をバナーの形で表示するのか分かりません。
これは私が通知を処理する必要がある方法ですか?はいの場合は、バックグラウンドと非アクティブの状態をどうすれば処理できますか?
しかし、私は右のUIApplicationStateBackgroundケースで何かを書く必要がありますか? –
私は 'UIApplicationStateBackground'のプッシュ通知を処理するための何もしていないと思っています.iOSはそれ自体で処理します。 –
その場合、 - (void)userNotificationCenter :(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler :(void(^)())私の場合、completionHandler {}メソッドが呼び出されていません!アプリが中断またはその終了した場合 –