草庐IT

nsuserdefault

全部标签

swift - NSUserDefaults 中的增量整数

是否有更优雅的方法来增加存储在用户默认值中的计数器?letdefaults=NSUserDefaults.standardUserDefaults()defaults.setInteger(defaults.integerForKey("counter")+1,forKey:"counter") 最佳答案 不,但如果你经常这样做,它可能会成为一个很好的扩展,就像这样。extensionNSUserDefaults{classfuncincrementIntegerForKey(key:String){letdefaults=stan

objective-c - 核心数据或 NSUserDefaults 以避免操纵用户?

保存用户无法操作或查看的数据(例如密码)的最佳方式是什么?NSUserDefaults被保存在Mac上的一个文件中,用户可以操作和查看。核心数据怎么样?这是否也保存在文件中,或者用户是否可以通过某种方式查看CoreData? 最佳答案 NSUserDefaults绝对不应该用于存储密码,因为它以纯文本形式存储。核心数据可以加密,但默认情况下不是。它将所有数据存储在一个非常易于阅读的SQLite数据库中。密码应存储在系统钥匙串(keychain)中。可以使用SecurityFramework访问钥匙串(keychain).有几个库可以

swift - 将字典保存到 NSUserDefaults

classAddElementVC:UIViewController{//textfieldsandsomeotherfunctionsaredefinedhere@IBActionfuncaddElement(sender:UIBarButtonItem){letnewElement=Element(/*propertiesaredefinedhere*/)vartheDict=NSUserDefaults.standardUserDefaults().dictionaryForKey(tableViewData)as[String:[Element]]ifvartheArray=t

ios - 从 NSUserDefaults 中删除 key 不起作用

我的应用程序中有注销功能。似乎是一个奇怪的问题,它不保存NSUserDefaults。在这里我只是想删除key。但是,如果我在注销后再次打开应用程序,它会发现此key仍在NSUserDefaults中。funcdidLogout(){//Clearuserdataletsettings=NSUserDefaults.standardUserDefaults()settings.removeObjectForKey("userData")settings.synchronize()unregisterForRemoteNotifications()openLoginScreen()}知道

swift - 我可以在 NSUserDefaults 中存储多少数据?

这个问题在这里已经有了答案:IsthereanylimitinstoringvaluesinNSUserDefaults?(10个答案)关闭6年前。我知道NSUserDefaults不适合存储大量数据,但我不知道实际限制是多少。这让我想到......1.是否有推荐的大小限制?2.有没有办法查看我存储的数据大小?在这种情况下,我正在考虑使用NSUserDefaults来存储字符串数组。

ios - NSUserDefaults standardUserDefaults 不适用于扩展

我在开发人员门户中将应用程序组添加到我的应用程序ID,并在我的配置文件中使用该应用程序ID。我在Xcode中的产品标识符设置为该应用程序ID。在我的应用委托(delegate)中,我从didFinishLaunchingWithOptions调用它NSUserDefaults.standardUserDefaults().setObject("hey",forKey:"TEST")NSUserDefaults.standardUserDefaults().synchronize()在我的键盘应用程序扩展中,我称之为:iflettest=NSUserDefaults.standardUs

ios - 在 NSUserDefaults 中存储自定义对象时应用程序崩溃

我有一个名为User的自定义类,符合NSCoding协议(protocol)。但是当我试图将它存储在NSUserDefaults中时,我得到了这个错误:Propertylistinvalidforformat:200(propertylistscannotcontainobjectsoftype'CFType')还有这个警告:NSForwarding:warning:object0x7f816a681110ofclass'Shikimori.User'doesnotimplementmethodSignatureForSelector:--troubleaheadUnrecognize

ios - Swift:不保存 NSUserDefaults.standardUserDefaults 值

我试图在NSUserDefaults中保存键值,但没有被保存。这是我的代码:funcsaveData(){letuserDefaults=NSUserDefaults.standardUserDefaults()userDefaults.setObject("blablabla",forKey:"data")userDefaults.synchronize()}你们知道为什么这个数据没有被保存吗?非常感谢您的帮助。 最佳答案 swift2.x:根据Apple消息来源:publicfuncobjectForKey(defaultNam

arrays - 如何使用 swift 将自定义结构数组保存到 NSUserDefault?

这个问题在这里已经有了答案:SaveStructtoUserDefaults(9个回答)关闭5个月前。我有一个名为“News”的自定义结构,我想将其附加到NSUserDefault的数组中。但它显示错误“类型‘新闻’不符合协议(protocol)‘AnyObject’”。我不想将“新闻”结构更改为一个类,因为它已经被其他代码使用了。无论如何,我可以将NSUserDefaults.standardUserDefaults().arrayForKey("savedNewsArray")类型更改为[News]吗?varsavedNews=NSUserDefaults.standardUser

ios - NSUserDefaults(套件名称 :) on iOS 9 and WatchOS 2 - not working?

我以前做过,但似乎没有任何效果。这是我的代码:在iOS应用中保存letgroupDefaults=NSUserDefaults(suiteName:"group.company.appSharedDefaults")groupDefaults?.setObject(theArray,forKey:"theKey")groupDefaults?.synchronize()阅读(适用于iOS但不适用于WatchOS2)letgroupDefaults=NSUserDefaults(suiteName:"group.company.appSharedDefaults")ifgroupDefa