Skip to content

Commit 68f9b7f

Browse files
committed
Use constants for Location and IAM module classes
Details: * Use constants for the 2 class names for the Location and IAM modules that are used by NSClassFromString: `OneSignalLocationManager` and `OneSignalInAppMessages` Motivation: * These can be easily missed. When the class `OneSignalLocation` was renamed to `OneSignalLocationManager`, some of the hardcoded strings were missed in `NSClassFromString` calls.
1 parent 05a981d commit 68f9b7f

File tree

5 files changed

+16
-12
lines changed

5 files changed

+16
-12
lines changed

iOS_SDK/OneSignalSDK/OneSignalCore/Source/OneSignalCommonDefines.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@
118118
// can use them directly.
119119
#define DEFAULT_UNAUTHORIZATIONOPTIONS (UNAuthorizationOptionSound + UNAuthorizationOptionBadge + UNAuthorizationOptionAlert)
120120

121+
// Class Names used with NSClassFromString
122+
#define ONE_SIGNAL_LOCATION_CLASS_NAME @"OneSignalLocationManager"
123+
#define ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME @"OneSignalInAppMessages"
124+
121125
// iOS Parameter Names
122126
#define IOS_FBA @"fba"
123127
#define IOS_USES_PROVISIONAL_AUTHORIZATION @"uses_provisional_auth"

iOS_SDK/OneSignalSDK/OneSignalInAppMessages/Model/OSInAppMessageLocationPrompt.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ - (void)handlePrompt:(void (^)(PromptActionResult result))completionHandler {
5252
This code calls [OneSignalLocation promptLocationFallbackToSettings:true completionHandler:completionHandler];
5353
*/
5454
BOOL fallback = YES;
55-
let oneSignalLocationManager = NSClassFromString(@"OneSignalLocationManager");
55+
let oneSignalLocationManager = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
5656
if (oneSignalLocationManager != nil && [oneSignalLocationManager respondsToSelector:@selector(promptLocationFallbackToSettings:completionHandler:)]) {
5757
NSMethodSignature* signature = [oneSignalLocationManager methodSignatureForSelector:@selector(promptLocationFallbackToSettings:completionHandler:)];
5858
NSInvocation* invocation = [NSInvocation invocationWithMethodSignature: signature];

iOS_SDK/OneSignalSDK/Source/OSMigrationController.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ @implementation OSMigrationController
4141

4242
- (void)migrate {
4343
[self migrateToVersion_02_14_00_AndGreater];
44-
let oneSignalInAppMessages = NSClassFromString(@"OneSignalInAppMessages");
44+
let oneSignalInAppMessages = NSClassFromString(ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME);
4545
if (oneSignalInAppMessages != nil && [oneSignalInAppMessages respondsToSelector:@selector(migrate)]) {
4646
[oneSignalInAppMessages performSelector:@selector(migrate)];
4747
}

iOS_SDK/OneSignalSDK/Source/OneSignal.m

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ + (void)logout {
208208
}
209209

210210
+ (Class<OSInAppMessages>)InAppMessages {
211-
let oneSignalInAppMessages = NSClassFromString(@"OneSignalInAppMessages");
211+
let oneSignalInAppMessages = NSClassFromString(ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME);
212212
if (oneSignalInAppMessages != nil && [oneSignalInAppMessages respondsToSelector:@selector(InAppMessages)]) {
213213
return [oneSignalInAppMessages performSelector:@selector(InAppMessages)];
214214
} else {
@@ -222,7 +222,7 @@ + (void)logout {
222222
}
223223

224224
+ (Class<OSLocation>)Location {
225-
let oneSignalLocationManager = NSClassFromString(@"OneSignalLocationManager");
225+
let oneSignalLocationManager = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
226226
if (oneSignalLocationManager != nil && [oneSignalLocationManager respondsToSelector:@selector(Location)]) {
227227
return [oneSignalLocationManager performSelector:@selector(Location)];
228228
} else {
@@ -380,7 +380,7 @@ + (void)startNewSessionInternal {
380380
[OneSignalTrackFirebaseAnalytics trackInfluenceOpenEvent];
381381

382382
// Clear last location after attaching data to user state or not
383-
let oneSignalLocation = NSClassFromString(@"OneSignalLocation");
383+
let oneSignalLocation = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
384384
if (oneSignalLocation != nil && [oneSignalLocation respondsToSelector:@selector(clearLastLocation)]) {
385385
[oneSignalLocation performSelector:@selector(clearLastLocation)];
386386
}
@@ -394,7 +394,7 @@ + (void)startNewSessionInternal {
394394
// The OSMessagingController is an OSPushSubscriptionObserver so that we pull IAMs once we have the sub id
395395
NSString *subscriptionId = OneSignalUserManagerImpl.sharedInstance.pushSubscriptionId;
396396
if (subscriptionId) {
397-
let oneSignalInAppMessages = NSClassFromString(@"OneSignalInAppMessages");
397+
let oneSignalInAppMessages = NSClassFromString(ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME);
398398
if (oneSignalInAppMessages != nil && [oneSignalInAppMessages respondsToSelector:@selector(getInAppMessagesFromServer:)]) {
399399
[oneSignalInAppMessages performSelector:@selector(getInAppMessagesFromServer:) withObject:subscriptionId];
400400
}
@@ -414,7 +414,7 @@ + (void)startNewSessionInternal {
414414
}
415415

416416
+ (void)startInAppMessages {
417-
let oneSignalInAppMessages = NSClassFromString(@"OneSignalInAppMessages");
417+
let oneSignalInAppMessages = NSClassFromString(ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME);
418418
if (oneSignalInAppMessages != nil && [oneSignalInAppMessages respondsToSelector:@selector(start)]) {
419419
[oneSignalInAppMessages performSelector:@selector(start)];
420420
}
@@ -426,7 +426,7 @@ + (void)startOutcomes {
426426
}
427427

428428
+ (void)startLocation {
429-
let oneSignalLocation = NSClassFromString(@"OneSignalLocation");
429+
let oneSignalLocation = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
430430
if (oneSignalLocation != nil && [oneSignalLocation respondsToSelector:@selector(start)]) {
431431
[oneSignalLocation performSelector:@selector(start)];
432432
}
@@ -619,7 +619,7 @@ + (void)downloadIOSParamsWithAppId:(NSString *)appId {
619619
[[OSRemoteParamController sharedController] saveRemoteParams:result];
620620
if ([[OSRemoteParamController sharedController] hasLocationKey]) {
621621
BOOL shared = [result[IOS_LOCATION_SHARED] boolValue];
622-
let oneSignalLocation = NSClassFromString(@"OneSignalLocation");
622+
let oneSignalLocation = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
623623
if (oneSignalLocation != nil && [oneSignalLocation respondsToSelector:@selector(startLocationSharedWithFlag:)]) {
624624
[OneSignalCoreHelper callSelector:@selector(startLocationSharedWithFlag:) onObject:oneSignalLocation withArg:shared];
625625
}

iOS_SDK/OneSignalSDK/Source/OneSignalLifecycleObserver.m

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,11 +81,11 @@ - (void)didBecomeActive {
8181

8282
if ([OneSignalConfigManager getAppId]) {
8383
[OneSignalTracker onFocus:NO];
84-
let oneSignalLocation = NSClassFromString(@"OneSignalLocation");
84+
let oneSignalLocation = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
8585
if (oneSignalLocation != nil && [oneSignalLocation respondsToSelector:@selector(onFocus:)]) {
8686
[OneSignalCoreHelper callSelector:@selector(onFocus:) onObject:oneSignalLocation withArg:YES];
8787
}
88-
let oneSignalInAppMessages = NSClassFromString(@"OneSignalInAppMessages");
88+
let oneSignalInAppMessages = NSClassFromString(ONE_SIGNAL_IN_APP_MESSAGES_CLASS_NAME);
8989
if (oneSignalInAppMessages != nil && [oneSignalInAppMessages respondsToSelector:@selector(onApplicationDidBecomeActive)]) {
9090
[oneSignalInAppMessages performSelector:@selector(onApplicationDidBecomeActive)];
9191
}
@@ -105,7 +105,7 @@ - (void)willResignActive {
105105
- (void)didEnterBackground {
106106
[OneSignalLog onesignalLog:ONE_S_LL_VERBOSE message:@"application/scene didEnterBackground"];
107107
if ([OneSignalConfigManager getAppId]) {
108-
let oneSignalLocation = NSClassFromString(@"OneSignalLocation");
108+
let oneSignalLocation = NSClassFromString(ONE_SIGNAL_LOCATION_CLASS_NAME);
109109
if (oneSignalLocation != nil && [oneSignalLocation respondsToSelector:@selector(onFocus:)]) {
110110
[OneSignalCoreHelper callSelector:@selector(onFocus:) onObject:oneSignalLocation withArg:NO];
111111
}

0 commit comments

Comments
 (0)