AppDelegate は、プッシュ通知の受信時にビューコントローラーで「関数」を実行できますか?
アプリケーションには 3 つのタブがあり、アプリケーションがプッシュ通知を受け取ると、3 つ目のタブは Web ビューをリロードする必要があります。
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
}
AppDelegate は、プッシュ通知の受信時にビューコントローラーで「関数」を実行できますか?
アプリケーションには 3 つのタブがあり、アプリケーションがプッシュ通知を受け取ると、3 つ目のタブは Web ビューをリロードする必要があります。
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
}
はい、特定の通知に登録する必要がありますviewController
。たとえば、リモート通知を受信した場合は、カスタム通知を投稿し、viewControllerでこの通知を登録/この通知をリッスンして、実行するメソッドを実行します。
あなたが受け取るときremoteNotification
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
[[NSNotificationCenter defaultCenter] postNotificationName:@"pushNotification" object:nil userInfo:userInfo];
}
viewController.m
この通知のビューコントローラを登録します
- (void)viewDidLoad {
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(pushNotificationReceived) name:@"pushNotification" object:nil];
[super viewDidLoad];
}
次にセレクターを実装します
-(void)pushNotificationReceived{
// do your stuff
}
dealloc
最後に、メソッドの通知から登録を解除することを忘れないでください
-(void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}