草庐IT

NSuserdefaults

全部标签

ios - 确定用户是否已启用应用程序的 Safari 内容拦截器扩展

我正在研究SafariContentBlockingextension.如果扩展被禁用,我打算显示设置说明,如果相反启用,我打算显示设置。如何确定用户是否启用了扩展程序?我看过thismethod检测自定义键盘是否已激活,但NSUserDefaults上没有与Safari内容拦截器相关的键。 最佳答案 从iOS10开始,SFContentBlockerManager中有一个新方法支持这一点:getStateOfContentBlocker(withIdentifier:completionHandler:)你这样调用它(Swift3

ios - 确定用户是否已启用应用程序的 Safari 内容拦截器扩展

我正在研究SafariContentBlockingextension.如果扩展被禁用,我打算显示设置说明,如果相反启用,我打算显示设置。如何确定用户是否启用了扩展程序?我看过thismethod检测自定义键盘是否已激活,但NSUserDefaults上没有与Safari内容拦截器相关的键。 最佳答案 从iOS10开始,SFContentBlockerManager中有一个新方法支持这一点:getStateOfContentBlocker(withIdentifier:completionHandler:)你这样调用它(Swift3

ios - [NSKeyedUnarchiver initForReadingWithData :]: data is NULL

在我保存到NSUserDefaults的设置中,有一个非强制对象,它没有任何开箱即用的默认值。在用户为此对象设置值之前,当我从NSUserDefaults取消存档时,应用程序会生成错误“[NSKeyedUnarchiverinitForReadingWithData:]:dataisNULL”。我忽略了这个错误,否则应用程序运行正常。是否有避免这种情况的最佳做法,这是否令人担心? 最佳答案 我不确定您要取消存档的确切内容,但如果您可以先查看key,然后再取消存档,您可以这样做:if([[[NSUserDefaultsstandard

ios - [NSKeyedUnarchiver initForReadingWithData :]: data is NULL

在我保存到NSUserDefaults的设置中,有一个非强制对象,它没有任何开箱即用的默认值。在用户为此对象设置值之前,当我从NSUserDefaults取消存档时,应用程序会生成错误“[NSKeyedUnarchiverinitForReadingWithData:]:dataisNULL”。我忽略了这个错误,否则应用程序运行正常。是否有避免这种情况的最佳做法,这是否令人担心? 最佳答案 我不确定您要取消存档的确切内容,但如果您可以先查看key,然后再取消存档,您可以这样做:if([[[NSUserDefaultsstandard

objective-c - ios设置包中的简单标题输出

我只想在设置文件中输出我的ios应用程序的版本号。我知道我必须将设置文件添加到应用程序文件夹。当我构建并运行时,我可以看到标准设置包附带的4个设置。为了获得一个简单的只读字符串,我将第二个值更改为以下值在代码中(didFinishLaunchingWithOptions:)我调用如下:NSString*version=[[[NSBundlemainBundle]infoDictionary]objectForKey:@"CFBundleVersion"];[[NSUserDefaultsstandardUserDefaults]setValue:versionforKey:@"vers

objective-c - ios设置包中的简单标题输出

我只想在设置文件中输出我的ios应用程序的版本号。我知道我必须将设置文件添加到应用程序文件夹。当我构建并运行时,我可以看到标准设置包附带的4个设置。为了获得一个简单的只读字符串,我将第二个值更改为以下值在代码中(didFinishLaunchingWithOptions:)我调用如下:NSString*version=[[[NSBundlemainBundle]infoDictionary]objectForKey:@"CFBundleVersion"];[[NSUserDefaultsstandardUserDefaults]setValue:versionforKey:@"vers

ios - 尝试插入非属性值 Objective C

您好,我正在尝试从餐厅对象创建一个fourates列表,我的应用程序有一个不同餐厅的列表,我希望用户能够添加最喜欢的餐厅,但此代码不起作用-(IBAction)toggleFav:(id)sender{Restaurant*resto=[selfrestaure];NSMutableDictionary*dic=[[NSMutableDictionaryalloc]init];[dicsetObject:resto.priceforKey:@"restoPrice"];[dicsetObject:resto.restaurantIdforKey:@"restaurantId"];[di

ios - 尝试插入非属性值 Objective C

您好,我正在尝试从餐厅对象创建一个fourates列表,我的应用程序有一个不同餐厅的列表,我希望用户能够添加最喜欢的餐厅,但此代码不起作用-(IBAction)toggleFav:(id)sender{Restaurant*resto=[selfrestaure];NSMutableDictionary*dic=[[NSMutableDictionaryalloc]init];[dicsetObject:resto.priceforKey:@"restoPrice"];[dicsetObject:resto.restaurantIdforKey:@"restaurantId"];[di

ios - 日志中的 NSUserDefaults 错误

我在日志中收到一些错误消息[UserDefaults]FailedtowritevalueforkeyGameIdinCFPrefsPlistSource(Domain:xxx.xxxxxx,User:kCFPreferencesCurrentUser,ByHost:No,Container:(null)):Pathnotaccessible,switchingtoread-only[UserDefaults]attempttosetforkeyininread-only(duetoapreviousfailedwrite)preferencesdomainCFPrefsPlistSo

ios - 日志中的 NSUserDefaults 错误

我在日志中收到一些错误消息[UserDefaults]FailedtowritevalueforkeyGameIdinCFPrefsPlistSource(Domain:xxx.xxxxxx,User:kCFPreferencesCurrentUser,ByHost:No,Container:(null)):Pathnotaccessible,switchingtoread-only[UserDefaults]attempttosetforkeyininread-only(duetoapreviousfailedwrite)preferencesdomainCFPrefsPlistSo