Skip to content

Commit 3bd0fc2

Browse files
authored
Changed all NSUserDefaults across the SDK (#56)
* Changed all NSUserDefaults across the SDK * Added extra keys to OneSignalCommonDefines for NSUserDefaults * OneSignalUSerDefaults is the class to be used in cases of all standard and shared instances of NSUSerDefaults * No more accessing the NSUSerDefaults class directly, but instead using OneSignalUSerDefaults with the correct init method * Saving played_id and app_id in both shared and standard NSUserDefaults now * Created a static receiveReceiptsController inside of OneSignalInternal * Clean up for previous PR * Init a user default object in places where it is used frequently * Minor misc cleaning of spacing and functions * Added jsonRepresentation as a public method of OSOutcomeEvent * This will make things easier for converting the object into a JSON * Added x86_64H arch back into xcodeproj file for SDK * Forgot to add back x86_64h to OneSignal SDK * Previous commit adds x86_64h to OneSignalDevApp * PR to adjust the OSOutcomeEvent * Needed a jsonRepresentation method to be public so it could be called from wrapper SDKs * Fixes from previous commits * Added NOTE comment to user default for integer * NSUSerDefaults uses NSInteger for all integer based operations, so we should too * Switch a place using sharedUserDefaults, but should have been using standardUserDefaults
1 parent aac4c8a commit 3bd0fc2

31 files changed

+514
-527
lines changed

iOS_SDK/OneSignalDevApp/OneSignalDevApp.xcodeproj/project.pbxproj

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -292,11 +292,6 @@
292292
};
293293
};
294294
};
295-
CA29515B2167F2500064227A = {
296-
CreatedOnToolsVersion = 10.0;
297-
DevelopmentTeam = 4ZR3G6ZK9T;
298-
ProvisioningStyle = Automatic;
299-
};
300295
};
301296
};
302297
buildConfigurationList = 9112E87D1E724C320022A1CB /* Build configuration list for PBXProject "OneSignalDevApp" */;
@@ -485,6 +480,10 @@
485480
9112E89A1E724C320022A1CB /* Debug */ = {
486481
isa = XCBuildConfiguration;
487482
buildSettings = {
483+
ARCHS = (
484+
"$(ARCHS_STANDARD)",
485+
x86_64h,
486+
);
488487
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
489488
CODE_SIGN_ENTITLEMENTS = OneSignalDevApp/OneSignalDevApp.entitlements;
490489
DEVELOPMENT_TEAM = 99SW8E36CT;
@@ -498,12 +497,17 @@
498497
OTHER_LDFLAGS = "-ObjC";
499498
PRODUCT_BUNDLE_IDENTIFIER = com.onesignal.example;
500499
PRODUCT_NAME = "$(TARGET_NAME)";
500+
VALID_ARCHS = "arm64 arm64e armv7 armv7s x86_64h";
501501
};
502502
name = Debug;
503503
};
504504
9112E89B1E724C320022A1CB /* Release */ = {
505505
isa = XCBuildConfiguration;
506506
buildSettings = {
507+
ARCHS = (
508+
"$(ARCHS_STANDARD)",
509+
x86_64h,
510+
);
507511
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
508512
CODE_SIGN_ENTITLEMENTS = OneSignalDevApp/OneSignalDevApp.entitlements;
509513
DEVELOPMENT_TEAM = 99SW8E36CT;
@@ -517,12 +521,17 @@
517521
OTHER_LDFLAGS = "-ObjC";
518522
PRODUCT_BUNDLE_IDENTIFIER = com.onesignal.example;
519523
PRODUCT_NAME = "$(TARGET_NAME)";
524+
VALID_ARCHS = "arm64 arm64e armv7 armv7s x86_64h";
520525
};
521526
name = Release;
522527
};
523528
9150E77B1E73BEDD00C5D46A /* Debug */ = {
524529
isa = XCBuildConfiguration;
525530
buildSettings = {
531+
ARCHS = (
532+
"$(ARCHS_STANDARD)",
533+
x86_64h,
534+
);
526535
CODE_SIGN_ENTITLEMENTS = OneSignalNotificationServiceExtension/OneSignalNotificationServiceExtension.entitlements;
527536
DEVELOPMENT_TEAM = 99SW8E36CT;
528537
FRAMEWORK_SEARCH_PATHS = (
@@ -535,12 +544,17 @@
535544
PRODUCT_BUNDLE_IDENTIFIER = com.onesignal.example.OneSignalNotificationServiceExtensionA;
536545
PRODUCT_NAME = "$(TARGET_NAME)";
537546
SKIP_INSTALL = YES;
547+
VALID_ARCHS = "arm64 arm64e armv7 armv7s x86_64h";
538548
};
539549
name = Debug;
540550
};
541551
9150E77C1E73BEDD00C5D46A /* Release */ = {
542552
isa = XCBuildConfiguration;
543553
buildSettings = {
554+
ARCHS = (
555+
"$(ARCHS_STANDARD)",
556+
x86_64h,
557+
);
544558
CODE_SIGN_ENTITLEMENTS = OneSignalNotificationServiceExtension/OneSignalNotificationServiceExtension.entitlements;
545559
DEVELOPMENT_TEAM = 99SW8E36CT;
546560
FRAMEWORK_SEARCH_PATHS = (
@@ -554,24 +568,7 @@
554568
PRODUCT_BUNDLE_IDENTIFIER = com.onesignal.example.OneSignalNotificationServiceExtensionA;
555569
PRODUCT_NAME = "$(TARGET_NAME)";
556570
SKIP_INSTALL = YES;
557-
};
558-
name = Release;
559-
};
560-
CA29515C2167F2500064227A /* Debug */ = {
561-
isa = XCBuildConfiguration;
562-
buildSettings = {
563-
CODE_SIGN_STYLE = Automatic;
564-
DEVELOPMENT_TEAM = 4ZR3G6ZK9T;
565-
PRODUCT_NAME = "$(TARGET_NAME)";
566-
};
567-
name = Debug;
568-
};
569-
CA29515D2167F2500064227A /* Release */ = {
570-
isa = XCBuildConfiguration;
571-
buildSettings = {
572-
CODE_SIGN_STYLE = Automatic;
573-
DEVELOPMENT_TEAM = 4ZR3G6ZK9T;
574-
PRODUCT_NAME = "$(TARGET_NAME)";
571+
VALID_ARCHS = "arm64 arm64e armv7 armv7s x86_64h";
575572
};
576573
name = Release;
577574
};

iOS_SDK/OneSignalSDK/Framework/OneSignal.framework/Versions/A/Headers/OneSignal.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,9 @@ typedef NS_ENUM(NSUInteger, Session) {
235235
// A weight to attach to the outcome name
236236
@property (strong, nonatomic, nonnull) NSDecimalNumber *weight;
237237

238+
// Convert the object into a NSDictionary
239+
- (NSDictionary * _Nonnull)jsonRepresentation;
240+
238241
@end
239242

240243

iOS_SDK/OneSignalSDK/OneSignal.xcodeproj/project.pbxproj

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,8 @@
3939
03389F691FB548A0006537F0 /* OneSignalTrackFirebaseAnalyticsOverrider.m in Sources */ = {isa = PBXBuildFile; fileRef = 03389F681FB548A0006537F0 /* OneSignalTrackFirebaseAnalyticsOverrider.m */; };
4040
03866CBD2378A33B0009C1D8 /* OutcomeIntegrationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 03866CBC2378A33B0009C1D8 /* OutcomeIntegrationTests.m */; };
4141
03866CC12378A67B0009C1D8 /* RestClientAsserts.m in Sources */ = {isa = PBXBuildFile; fileRef = 03866CC02378A67B0009C1D8 /* RestClientAsserts.m */; };
42-
038C63822387450300CA4310 /* OSReceiveReceiptController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OSReceiveReceiptController.m */; };
43-
038C63832387450300CA4310 /* OSReceiveReceiptController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OSReceiveReceiptController.m */; };
42+
038C63822387450300CA4310 /* OneSignalReceiveReceiptsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OneSignalReceiveReceiptsController.m */; };
43+
038C63832387450300CA4310 /* OneSignalReceiveReceiptsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OneSignalReceiveReceiptsController.m */; };
4444
1AF75EAE1E8567FD0097B315 /* NSString+OneSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF75EAD1E8567FD0097B315 /* NSString+OneSignal.m */; };
4545
1AF75EAF1E8569710097B315 /* NSString+OneSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF75EAD1E8567FD0097B315 /* NSString+OneSignal.m */; };
4646
1AF75EB01E8569720097B315 /* NSString+OneSignal.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AF75EAD1E8567FD0097B315 /* NSString+OneSignal.m */; };
@@ -85,7 +85,7 @@
8585
7A674F1B2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A674F1A2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m */; };
8686
7A674F1C2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A674F1A2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m */; };
8787
7A674F1D2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A674F1A2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m */; };
88-
7A9173A2231971E5007848FA /* OSReceiveReceiptController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OSReceiveReceiptController.m */; };
88+
7A9173A2231971E5007848FA /* OneSignalReceiveReceiptsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A9173A1231971E5007848FA /* OneSignalReceiveReceiptsController.m */; };
8989
7AD8DDE7234BD3BE00747A8A /* OneSignalUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AD8DDE6234BD3BE00747A8A /* OneSignalUserDefaults.m */; };
9090
7ADE379422E8B69C00263048 /* OneSignalOutcomeEventsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7ADE379322E8B69C00263048 /* OneSignalOutcomeEventsController.m */; };
9191
7ADE37AD22F2554400263048 /* OneSignalOutcomeEventsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7ADE379322E8B69C00263048 /* OneSignalOutcomeEventsController.m */; };
@@ -103,7 +103,6 @@
103103
7AECE59F23675F6300537907 /* OSFocusTimeProcessorFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AECE59D23675F6300537907 /* OSFocusTimeProcessorFactory.m */; };
104104
7AECE5A023675F6300537907 /* OSFocusTimeProcessorFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AECE59D23675F6300537907 /* OSFocusTimeProcessorFactory.m */; };
105105
7AF76E91234252210085F926 /* OSSessionResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AF76E90234252210085F926 /* OSSessionResult.m */; };
106-
7AF8FDBA2329656E00A19245 /* OneSignalUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AF8FDB92329656E00A19245 /* OneSignalUserDefaults.m */; };
107106
7AF8FDBB2332A58900A19245 /* OneSignalSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A12EBD523060A6F005C4FA5 /* OneSignalSessionManager.m */; };
108107
7AF8FDBC2332A5A600A19245 /* OSOutcomesUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A12EBD923060AEE005C4FA5 /* OSOutcomesUtils.m */; };
109108
7AF8FDBD2332A5C200A19245 /* OSIndirectNotification.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A12EBDC23060B37005C4FA5 /* OSIndirectNotification.m */; };
@@ -399,8 +398,8 @@
399398
7A12EBDC23060B37005C4FA5 /* OSIndirectNotification.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OSIndirectNotification.m; sourceTree = "<group>"; };
400399
7A674F182360D813001F9ACD /* OSBaseFocusTimeProcessor.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OSBaseFocusTimeProcessor.h; sourceTree = "<group>"; };
401400
7A674F1A2360D82E001F9ACD /* OSBaseFocusTimeProcessor.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OSBaseFocusTimeProcessor.m; sourceTree = "<group>"; };
402-
7A9173A1231971E5007848FA /* OSReceiveReceiptController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OSReceiveReceiptController.m; sourceTree = "<group>"; };
403-
7A9173A3231971F8007848FA /* OSReceiveReceiptController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OSReceiveReceiptController.h; sourceTree = "<group>"; };
401+
7A9173A1231971E5007848FA /* OneSignalReceiveReceiptsController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OneSignalReceiveReceiptsController.m; sourceTree = "<group>"; };
402+
7A9173A3231971F8007848FA /* OneSignalReceiveReceiptsController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OneSignalReceiveReceiptsController.h; sourceTree = "<group>"; };
404403
7AD8DDE6234BD3BE00747A8A /* OneSignalUserDefaults.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OneSignalUserDefaults.m; sourceTree = "<group>"; };
405404
7AD8DDE8234BD3CF00747A8A /* OneSignalUserDefaults.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OneSignalUserDefaults.h; sourceTree = "<group>"; };
406405
7ADE379322E8B69C00263048 /* OneSignalOutcomeEventsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OneSignalOutcomeEventsController.m; sourceTree = "<group>"; };
@@ -413,8 +412,6 @@
413412
7AECE59D23675F6300537907 /* OSFocusTimeProcessorFactory.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OSFocusTimeProcessorFactory.m; sourceTree = "<group>"; };
414413
7AF76E90234252210085F926 /* OSSessionResult.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OSSessionResult.m; sourceTree = "<group>"; };
415414
7AF76E92234252320085F926 /* OSSessionResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OSSessionResult.h; sourceTree = "<group>"; };
416-
7AF8FDB82329655C00A19245 /* OneSignalUserDefaults.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OneSignalUserDefaults.h; sourceTree = "<group>"; };
417-
7AF8FDB92329656E00A19245 /* OneSignalUserDefaults.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OneSignalUserDefaults.m; sourceTree = "<group>"; };
418415
7AFE856A2368DDB80091D6A5 /* OSFocusCallParams.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OSFocusCallParams.m; sourceTree = "<group>"; };
419416
7AFE856E2368DDC50091D6A5 /* OSFocusCallParams.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OSFocusCallParams.h; sourceTree = "<group>"; };
420417
911E2CBA1E398AB3003112A4 /* UnitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = UnitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -710,13 +707,12 @@
710707
name = OnFocus;
711708
sourceTree = "<group>";
712709
};
713-
7A9173A023197198007848FA /* ReceiveReceipt */ = {
710+
7A9173A023197198007848FA /* ReceiveReceipts */ = {
714711
isa = PBXGroup;
715712
children = (
716-
7A9173A1231971E5007848FA /* OSReceiveReceiptController.m */,
717-
7A9173A3231971F8007848FA /* OSReceiveReceiptController.h */,
713+
9D475EDA23874D1100EE69F9 /* Controller */,
718714
);
719-
name = ReceiveReceipt;
715+
name = ReceiveReceipts;
720716
sourceTree = "<group>";
721717
};
722718
7ADE379222E8B56F00263048 /* OutcomeEvents */ = {
@@ -769,7 +765,7 @@
769765
children = (
770766
7A674F172360D7DB001F9ACD /* OnFocus */,
771767
7ADE379222E8B56F00263048 /* OutcomeEvents */,
772-
7A9173A023197198007848FA /* ReceiveReceipt */,
768+
7A9173A023197198007848FA /* ReceiveReceipts */,
773769
454F94F31FAD263300D74CCF /* Model */,
774770
9129C6B41E89E541009CB6A0 /* State */,
775771
91F58D7B1E7C7EE30017D24D /* NotificationSettings */,
@@ -812,8 +808,6 @@
812808
CAABF34A205B15780042F8E5 /* OneSignalExtensionBadgeHandler.m */,
813809
CAAEA68621ED68A40049CF15 /* OneSignalNotificationCategoryController.h */,
814810
CAAEA68521ED68A30049CF15 /* OneSignalNotificationCategoryController.m */,
815-
7AF8FDB82329655C00A19245 /* OneSignalUserDefaults.h */,
816-
7AF8FDB92329656E00A19245 /* OneSignalUserDefaults.m */,
817811
);
818812
path = Source;
819813
sourceTree = "<group>";
@@ -905,6 +899,15 @@
905899
name = Controller;
906900
sourceTree = "<group>";
907901
};
902+
9D475EDA23874D1100EE69F9 /* Controller */ = {
903+
isa = PBXGroup;
904+
children = (
905+
7A9173A1231971E5007848FA /* OneSignalReceiveReceiptsController.m */,
906+
7A9173A3231971F8007848FA /* OneSignalReceiveReceiptsController.h */,
907+
);
908+
name = Controller;
909+
sourceTree = "<group>";
910+
};
908911
CA08FC701FE99AE6004C445F /* API */ = {
909912
isa = PBXGroup;
910913
children = (
@@ -1201,7 +1204,7 @@
12011204
buildActionMask = 2147483647;
12021205
files = (
12031206
9D1BD968237A28FC00A064F7 /* OSUniqueOutcomeNotification.m in Sources */,
1204-
7A9173A2231971E5007848FA /* OSReceiveReceiptController.m in Sources */,
1207+
7A9173A2231971E5007848FA /* OneSignalReceiveReceiptsController.m in Sources */,
12051208
9124120E1E73342200E41FD7 /* OneSignal.m in Sources */,
12061209
CACBAA97218A6243000ACAA5 /* OSMessagingController.m in Sources */,
12071210
CA36F35921C33A2500300C77 /* OSInAppMessageController.m in Sources */,
@@ -1256,7 +1259,6 @@
12561259
9129C6BE1E89E7AB009CB6A0 /* OSSubscription.m in Sources */,
12571260
7AECE59023674A9700537907 /* OSAttributedFocusTimeProcessor.m in Sources */,
12581261
7ADE379422E8B69C00263048 /* OneSignalOutcomeEventsController.m in Sources */,
1259-
7AF8FDBA2329656E00A19245 /* OneSignalUserDefaults.m in Sources */,
12601262
912412361E73342200E41FD7 /* OneSignalTrackIAP.m in Sources */,
12611263
CAABF34B205B15780042F8E5 /* OneSignalExtensionBadgeHandler.m in Sources */,
12621264
CACBAA9D218A6243000ACAA5 /* OSInAppMessageView.m in Sources */,
@@ -1324,7 +1326,7 @@
13241326
9129C6BF1E89E7AB009CB6A0 /* OSSubscription.m in Sources */,
13251327
912412371E73342200E41FD7 /* OneSignalTrackIAP.m in Sources */,
13261328
CAABF34C205B157B0042F8E5 /* OneSignalExtensionBadgeHandler.m in Sources */,
1327-
038C63822387450300CA4310 /* OSReceiveReceiptController.m in Sources */,
1329+
038C63822387450300CA4310 /* OneSignalReceiveReceiptsController.m in Sources */,
13281330
7AECE59123674A9700537907 /* OSAttributedFocusTimeProcessor.m in Sources */,
13291331
CACBAA9E218A6243000ACAA5 /* OSInAppMessageView.m in Sources */,
13301332
CA08FC801FE99B25004C445F /* Requests.m in Sources */,
@@ -1427,7 +1429,7 @@
14271429
912412441E73342200E41FD7 /* UNUserNotificationCenter+OneSignal.m in Sources */,
14281430
03866CC12378A67B0009C1D8 /* RestClientAsserts.m in Sources */,
14291431
7ADF891C230DB5BD0054E0D6 /* UnitTestAppDelegate.m in Sources */,
1430-
038C63832387450300CA4310 /* OSReceiveReceiptController.m in Sources */,
1432+
038C63832387450300CA4310 /* OneSignalReceiveReceiptsController.m in Sources */,
14311433
9124123C1E73342200E41FD7 /* OneSignalWebView.m in Sources */,
14321434
CAB411AE208931EE005A70D1 /* DummyNotificationCenterDelegate.m in Sources */,
14331435
4529DEF01FA8433500CEAB1D /* NSLocaleOverrider.m in Sources */,

iOS_SDK/OneSignalSDK/Source/OSBaseFocusTimeProcessor.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ - (void)cancelDelayedJob {
8181

8282
- (NSTimeInterval)getUnsentActiveTime {
8383
if (!unsentActiveTime)
84-
unsentActiveTime = [OneSignalUserDefaults.initShared getSavedObject:self.unsentActiveTimeUserDefaultsKey defaultValue:@0];
84+
unsentActiveTime = [OneSignalUserDefaults.initShared getSavedObjectForKey:self.unsentActiveTimeUserDefaultsKey defaultValue:@0];
8585

8686
return [unsentActiveTime doubleValue];
8787
}

iOS_SDK/OneSignalSDK/Source/OSEmailSubscription.m

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@
2525
* THE SOFTWARE.
2626
*/
2727

28-
#import "OSEmailSubscription.h"
2928
#import "OneSignalHelper.h"
29+
#import "OSEmailSubscription.h"
30+
#import "OneSignalUserDefaults.h"
3031
#import "OneSignalCommonDefines.h"
3132

3233
@implementation OSEmailSubscriptionState
@@ -38,12 +39,11 @@ - (ObservableEmailSubscriptionStateType *)observable {
3839
}
3940

4041
- (instancetype)init {
41-
let userDefaults = [NSUserDefaults standardUserDefaults];
42-
43-
_emailAddress = [userDefaults objectForKey:EMAIL_ADDRESS];
44-
_requiresEmailAuth = [[userDefaults objectForKey:REQUIRE_EMAIL_AUTH] boolValue];
45-
_emailAuthCode = [userDefaults stringForKey:EMAIL_AUTH_CODE];
46-
_emailUserId = [userDefaults stringForKey:EMAIL_USERID];
42+
let standardUserDefaults = OneSignalUserDefaults.initStandard;
43+
_emailAddress = [standardUserDefaults getSavedStringForKey:EMAIL_ADDRESS defaultValue:nil];
44+
_requiresEmailAuth = [standardUserDefaults getSavedBoolForKey:REQUIRE_EMAIL_AUTH defaultValue:false];
45+
_emailAuthCode = [standardUserDefaults getSavedStringForKey:EMAIL_AUTH_CODE defaultValue:nil];
46+
_emailUserId = [standardUserDefaults getSavedStringForKey:EMAIL_USERID defaultValue:nil];
4747

4848
return self;
4949
}
@@ -53,14 +53,11 @@ -(BOOL)subscribed {
5353
}
5454

5555
- (void)persist {
56-
let userDefaults = [NSUserDefaults standardUserDefaults];
57-
58-
[userDefaults setObject:_emailAddress forKey:EMAIL_ADDRESS];
59-
[userDefaults setObject:[NSNumber numberWithBool:_requiresEmailAuth] forKey:REQUIRE_EMAIL_AUTH];
60-
[userDefaults setObject:_emailAuthCode forKey:EMAIL_AUTH_CODE];
61-
[userDefaults setObject:_emailUserId forKey:EMAIL_USERID];
62-
63-
[userDefaults synchronize];
56+
let standardUserDefaults = OneSignalUserDefaults.initStandard;
57+
[standardUserDefaults saveStringForKey:EMAIL_ADDRESS withValue:_emailAddress];
58+
[standardUserDefaults saveBoolForKey:REQUIRE_EMAIL_AUTH withValue:_requiresEmailAuth];
59+
[standardUserDefaults saveStringForKey:EMAIL_AUTH_CODE withValue:_emailAuthCode];
60+
[standardUserDefaults saveStringForKey:EMAIL_USERID withValue:_emailUserId];
6461
}
6562

6663
- (NSString *)description {

iOS_SDK/OneSignalSDK/Source/OSMessagingController.m

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -92,16 +92,16 @@ + (BOOL)doesDeviceSupportIAM {
9292
- (instancetype)init {
9393
if (self = [super init]) {
9494
self.messages = [NSArray<OSInAppMessage *> new];
95-
9695
self.triggerController = [OSTriggerController new];
9796
self.triggerController.delegate = self;
98-
9997
self.messageDisplayQueue = [NSMutableArray new];
10098

99+
let standardUserDefaults = OneSignalUserDefaults.initStandard;
100+
101101
// Get all cached IAM data from NSUserDefaults for shown, impressions, and clicks
102-
self.seenInAppMessages = [[NSMutableSet alloc] initWithSet:[OneSignalUserDefaults.initStandard getSavedSet:OS_IAM_SEEN_SET_KEY defaultValue:nil]];
103-
self.clickedClickIds = [[NSMutableSet alloc] initWithSet:[OneSignalUserDefaults.initStandard getSavedSet:OS_IAM_CLICKED_SET_KEY defaultValue:nil]];
104-
self.impressionedInAppMessages = [[NSMutableSet alloc] initWithSet:[OneSignalUserDefaults.initStandard getSavedSet:OS_IAM_IMPRESSIONED_SET_KEY defaultValue:nil]];
102+
self.seenInAppMessages = [[NSMutableSet alloc] initWithSet:[standardUserDefaults getSavedSetForKey:OS_IAM_SEEN_SET_KEY defaultValue:nil]];
103+
self.clickedClickIds = [[NSMutableSet alloc] initWithSet:[standardUserDefaults getSavedSetForKey:OS_IAM_CLICKED_SET_KEY defaultValue:nil]];
104+
self.impressionedInAppMessages = [[NSMutableSet alloc] initWithSet:[standardUserDefaults getSavedSetForKey:OS_IAM_IMPRESSIONED_SET_KEY defaultValue:nil]];
105105

106106
// BOOL that controls if in-app messaging is paused or not (false by default)
107107
[self setInAppMessagingPaused:false];

0 commit comments

Comments
 (0)