NSUserdefaults 使用 xcodebuild
Posted
技术标签:
【中文标题】NSUserdefaults 使用 xcodebuild【英文标题】:NSUserdefaults using xcodebuild 【发布时间】:2012-10-03 12:35:34 【问题描述】:xcodebuild 有一个参数-userdefault=value
。如何使用它来设置 NSUserDefaults
?我必须指定一个文件/plist吗?
【问题讨论】:
我从未使用过它,但它看起来具有name=value
语义,并且不清楚正在更改哪些用户默认值...
【参考方案1】:
您只需将其用作 -name=value
语法,它定义了 NSUserDefaults 中的值(在 NSArgumentDomain
级别),以便您可以使用 [[NSUserDefaults standardUserDefaults] valueForKey:@"name"]
检索它,就像您通常做的那样。
这是一种覆盖其他域的默认值的方法,例如应用程序域中的默认值(由应用程序首选项的 plist 定义)。
请参阅here in the documentation 了解更多信息(尤其是表 1-2)和“论据域”段落。
参数域
参数域包含从命令行参数设置的值(如果您从命令行启动应用程序)并由
NSArgumentDomain
常量标识。从命令行设置的值由系统自动放入该域中。要向此域添加值,请在命令行上指定首选项名称(前面带有连字符)并在其后面加上相应的值。例如,以下命令启动 Xcode 并将其IndexOnOpen
首选项的值设置为NO
:localhost> Xcode.app/Contents/MacOS/Xcode -IndexOnOpen NO
从命令行设置的首选项临时覆盖存储在用户默认数据库中的既定值。在前面的示例中,将
IndexOnOpen
首选项设置为NO
会阻止 Xcode 自动索引项目,即使用户默认数据库中的首选项设置为YES
。
【讨论】:
以上是关于NSUserdefaults 使用 xcodebuild的主要内容,如果未能解决你的问题,请参考以下文章
使用常量 NSString 作为 NSUserDefaults 的键