|
|
@@ -122,63 +122,66 @@
|
|
|
#pragma mark - GDTCORLifecycleProtocol
|
|
|
|
|
|
- (void)appWillBackground:(nonnull GDTCORApplication *)app {
|
|
|
- dispatch_async(_registrarQueue, ^{
|
|
|
- for (id<GDTCORUploader> uploader in [self->_targetToUploader allValues]) {
|
|
|
- if ([uploader respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
- [uploader appWillBackground:app];
|
|
|
- }
|
|
|
+ NSArray<id<GDTCORUploader>> *uploaders = [self.targetToUploader allValues];
|
|
|
+ for (id<GDTCORUploader> uploader in uploaders) {
|
|
|
+ if ([uploader respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
+ [uploader appWillBackground:app];
|
|
|
}
|
|
|
- for (id<GDTCORPrioritizer> prioritizer in [self->_targetToPrioritizer allValues]) {
|
|
|
- if ([prioritizer respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
- [prioritizer appWillBackground:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORPrioritizer>> *prioritizers = [self.targetToPrioritizer allValues];
|
|
|
+ for (id<GDTCORPrioritizer> prioritizer in prioritizers) {
|
|
|
+ if ([prioritizer respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
+ [prioritizer appWillBackground:app];
|
|
|
}
|
|
|
- for (id<GDTCORStorageProtocol> storage in [self->_targetToStorage allValues]) {
|
|
|
- if ([storage respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
- [storage appWillBackground:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORStorageProtocol>> *storages = [self.targetToStorage allValues];
|
|
|
+ for (id<GDTCORStorageProtocol> storage in storages) {
|
|
|
+ if ([storage respondsToSelector:@selector(appWillBackground:)]) {
|
|
|
+ [storage appWillBackground:app];
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- (void)appWillForeground:(nonnull GDTCORApplication *)app {
|
|
|
- dispatch_async(_registrarQueue, ^{
|
|
|
- for (id<GDTCORUploader> uploader in [self->_targetToUploader allValues]) {
|
|
|
- if ([uploader respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
- [uploader appWillForeground:app];
|
|
|
- }
|
|
|
+ NSArray<id<GDTCORUploader>> *uploaders = [self.targetToUploader allValues];
|
|
|
+ for (id<GDTCORUploader> uploader in uploaders) {
|
|
|
+ if ([uploader respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
+ [uploader appWillForeground:app];
|
|
|
}
|
|
|
- for (id<GDTCORPrioritizer> prioritizer in [self->_targetToPrioritizer allValues]) {
|
|
|
- if ([prioritizer respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
- [prioritizer appWillForeground:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORPrioritizer>> *prioritizers = [self.targetToPrioritizer allValues];
|
|
|
+ for (id<GDTCORPrioritizer> prioritizer in prioritizers) {
|
|
|
+ if ([prioritizer respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
+ [prioritizer appWillForeground:app];
|
|
|
}
|
|
|
- for (id<GDTCORStorageProtocol> storage in [self->_targetToStorage allValues]) {
|
|
|
- if ([storage respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
- [storage appWillForeground:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORStorageProtocol>> *storages = [self.targetToStorage allValues];
|
|
|
+ for (id<GDTCORStorageProtocol> storage in storages) {
|
|
|
+ if ([storage respondsToSelector:@selector(appWillForeground:)]) {
|
|
|
+ [storage appWillForeground:app];
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- (void)appWillTerminate:(nonnull GDTCORApplication *)app {
|
|
|
- dispatch_sync(_registrarQueue, ^{
|
|
|
- for (id<GDTCORUploader> uploader in [self->_targetToUploader allValues]) {
|
|
|
- if ([uploader respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
- [uploader appWillTerminate:app];
|
|
|
- }
|
|
|
+ NSArray<id<GDTCORUploader>> *uploaders = [self.targetToUploader allValues];
|
|
|
+ for (id<GDTCORUploader> uploader in uploaders) {
|
|
|
+ if ([uploader respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
+ [uploader appWillTerminate:app];
|
|
|
}
|
|
|
- for (id<GDTCORPrioritizer> prioritizer in [self->_targetToPrioritizer allValues]) {
|
|
|
- if ([prioritizer respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
- [prioritizer appWillTerminate:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORPrioritizer>> *prioritizers = [self.targetToPrioritizer allValues];
|
|
|
+ for (id<GDTCORPrioritizer> prioritizer in prioritizers) {
|
|
|
+ if ([prioritizer respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
+ [prioritizer appWillTerminate:app];
|
|
|
}
|
|
|
- for (id<GDTCORStorageProtocol> storage in [self->_targetToStorage allValues]) {
|
|
|
- if ([storage respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
- [storage appWillTerminate:app];
|
|
|
- }
|
|
|
+ }
|
|
|
+ NSArray<id<GDTCORStorageProtocol>> *storages = [self.targetToStorage allValues];
|
|
|
+ for (id<GDTCORStorageProtocol> storage in storages) {
|
|
|
+ if ([storage respondsToSelector:@selector(appWillTerminate:)]) {
|
|
|
+ [storage appWillTerminate:app];
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@end
|