zoukankan      html  css  js  c++  java
  • NSInvalidArgumentException', reason: '[__NSCFDictionary setObject:forKey:]: attempt to insert nil value (key: WebKitLocalStorageDatabasePathPreferenc

    在iOS5.1以后的版本中,清除所有的NSUserDefaults Data的时候会报错,直接crash

    在清除的时候用一下代码,问题解决。

    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    
    NSDictionary *userDefaultsDictionary = [userDefaults dictionaryRepresentation];
    NSString *strWebDatabaseDirectory = [userDefaultsDictionary objectForKey:@"WebDatabaseDirectory"];
    NSString *strWebKitLocalStorageDatabasePathPreferenceKey = [userDefaultsDictionary objectForKey:@"WebKitLocalStorageDatabasePathPreferenceKey"];
    
    [userDefaults removePersistentDomainForName:[[NSBundle mainBundle] bundleIdentifier]];
    
    if (strWebDatabaseDirectory) {
        [userDefaults setObject:strWebDatabaseDirectory forKey:@"WebDatabaseDirectory"];}
    if (strWebKitLocalStorageDatabasePathPreferenceKey) {
        [userDefaults setObject:strWebKitLocalStorageDatabasePathPreferenceKey forKey:@"WebKitLocalStorageDatabasePathPreferenceKey"];}
    
    [userDefaults synchronize];
  • 相关阅读:
    Linux与Windows命令的比较
    操作系统的启动过程
    Spyder快捷键
    pytoch的最佳打开方式
    操作系统逻辑结构
    插值法
    bzoj3509[CodeChef]COUNTARI
    bzoj2969 矩形粉刷
    hdu5575 Discover Water Tank
    bzoj3473字符串&bzoj3277串
  • 原文地址:https://www.cnblogs.com/easonoutlook/p/3083344.html
Copyright © 2011-2022 走看看