From abad6e49864348a5779df475a34695656eb9ae88 Mon Sep 17 00:00:00 2001 From: Samuel Clay Date: Wed, 28 Apr 2021 17:33:15 -0400 Subject: [PATCH] Only registering APNS token once, not once for every iOS-notification-enabled feed. --- clients/ios/Classes/NewsBlurAppDelegate.m | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/clients/ios/Classes/NewsBlurAppDelegate.m b/clients/ios/Classes/NewsBlurAppDelegate.m index 1cddac05c..752e8def7 100644 --- a/clients/ios/Classes/NewsBlurAppDelegate.m +++ b/clients/ios/Classes/NewsBlurAppDelegate.m @@ -535,12 +535,19 @@ -(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { const char *data = [deviceToken bytes]; NSMutableString *token = [NSMutableString string]; + static NSMutableString *seenToken = nil; for (NSUInteger i = 0; i < [deviceToken length]; i++) { [token appendFormat:@"%02.2hhX", data[i]]; } - NSLog(@" -> APNS token: %@", token); + if (seenToken && [seenToken isEqualToString:token]) { + NSLog(@" -> Already registered APNS token: %@", token); + return; + } + + NSLog(@" -> Registering APNS token: %@", token); + seenToken = token; NSString *url = [NSString stringWithFormat:@"%@/notifications/apns_token/", self.url]; NSMutableDictionary *params = [NSMutableDictionary dictionary]; [params setObject:token forKey:@"apns_token"];