diff --git a/Signal/src/Models/AccountManager.swift b/Signal/src/Models/AccountManager.swift index 9b9ff9e43..86e354534 100644 --- a/Signal/src/Models/AccountManager.swift +++ b/Signal/src/Models/AccountManager.swift @@ -76,7 +76,9 @@ class AccountManager: NSObject { private func syncPushTokens() -> Promise { Logger.info("\(self.TAG) in \(#function)") - return SyncPushTokensJob.run(accountManager: self, preferences: self.preferences) + let job = SyncPushTokensJob(accountManager: self, preferences: self.preferences) + job.uploadOnlyIfStale = false + return job.run() } private func completeRegistration() { diff --git a/Signal/src/ViewControllers/DebugUI/DebugUIMisc.m b/Signal/src/ViewControllers/DebugUI/DebugUIMisc.m index 6ffea00b7..e18590263 100644 --- a/Signal/src/ViewControllers/DebugUI/DebugUIMisc.m +++ b/Signal/src/ViewControllers/DebugUI/DebugUIMisc.m @@ -91,6 +91,7 @@ NS_ASSUME_NONNULL_BEGIN { DDLogInfo(@"%@ re-registering.", self.tag); [[TSAccountManager sharedInstance] resetForRegistration]; + [[Environment getCurrent].preferences unsetRecordedAPNSTokens]; RegistrationViewController *viewController = [RegistrationViewController new]; OWSNavigationController *navigationController = diff --git a/Signal/src/environment/OWSPreferences.h b/Signal/src/environment/OWSPreferences.h index d22783594..27a0d674c 100644 --- a/Signal/src/environment/OWSPreferences.h +++ b/Signal/src/environment/OWSPreferences.h @@ -79,6 +79,8 @@ extern NSString *const OWSPreferencesKeyEnableDebugLog; - (void)setVoipToken:(NSString *)value; - (nullable NSString *)getVoipToken; +- (void)unsetRecordedAPNSTokens; + @end NS_ASSUME_NONNULL_END diff --git a/Signal/src/environment/OWSPreferences.m b/Signal/src/environment/OWSPreferences.m index 4ac6b2d31..7ce1b9a5a 100644 --- a/Signal/src/environment/OWSPreferences.m +++ b/Signal/src/environment/OWSPreferences.m @@ -267,6 +267,25 @@ NSString *const OWSPreferencesKeyIOSUpgradeNagVersion = @"iOSUpgradeNagVersion"; return [self tryGetValueForKey:OWSPreferencesKeyLastRecordedVoipToken]; } +- (void)unsetRecordedAPNSTokens +{ + DDLogWarn(@"%@ Forgetting recorded APNS tokens", self.tag); + [self setValue:nil forKey:OWSPreferencesKeyLastRecordedPushToken]; + [self setValue:nil forKey:OWSPreferencesKeyLastRecordedVoipToken]; +} + +#pragma mark - Logging + ++ (NSString *)tag +{ + return [NSString stringWithFormat:@"[%@]", self.class]; +} + +- (NSString *)tag +{ + return self.class.tag; +} + @end NS_ASSUME_NONNULL_END