Migrate NSUserDefaults to App Groups - Swift
func migrateUserDefaultsToAppGroups() { | |
// User Defaults - Old | |
let userDefaults = NSUserDefaults.standardUserDefaults() | |
// App Groups Default - New | |
let groupDefaults = NSUserDefaults(suiteName: "group.myGroup") | |
// Key to track if we migrated | |
let didMigrateToAppGroups = "DidMigrateToAppGroups" | |
if let groupDefaults = groupDefaults { | |
if !groupDefaults.boolForKey(didMigrateToAppGroups) { | |
for key in userDefaults.dictionaryRepresentation().keys { | |
groupDefaults.setObject(userDefaults.dictionaryRepresentation()[key], forKey: key) | |
} | |
groupDefaults.setBool(true, forKey: didMigrateToAppGroups) | |
groupDefaults.synchronize() | |
print("Successfully migrated defaults") | |
} else { | |
print("No need to migrate defaults") | |
} | |
} else { | |
print("Unable to create NSUserDefaults with given app group") | |
} | |
} |
This comment has been minimized.
This comment has been minimized.
thx so much! |
This comment has been minimized.
This comment has been minimized.
This is super helpful, thank you! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
An updated version of your code to Swift 4