如何清除全部的NSUserDefaults储存的数据

2025-04-30 09:26:25
推荐回答(1个)
回答1:

今天做项目遇到,如何清除全部的NSUserDefaults储存的数据。

方法1:找到所有的key然后remove掉

代码:

[objc] view plain copy
/**
* 清除所有的存储本地的数据
*/
- (void)clearAllUserDefaultsData
{
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];

NSDictionary *dic = [userDefaults dictionaryRepresentation];
for (id key in dic) {
[userDefaults removeObjectForKey:key];
}
[userDefaults synchronize];
}

方法二:清除持久域

[objc] view plain copy
/**
* 清除所有的存储本地的数据
*/
- (void)clearAllUserDefaultsData
{

NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];

}