0

xcodebuild 有一个参数-userdefault=value。如何使用它来设置NSUserDefaults?我必须指定一个文件/plist吗?

4

1 回答 1

1

您只需将其用作-name=value语法,它会在 NSUserDefaults (在NSArgumentDomain级别)中定义值,以便您可以使用[[NSUserDefaults standardUserDefaults] valueForKey:@"name"]与通常完全相同的方式检索它。

这是一种覆盖来自其他域的默认值的方法,例如应用程序域中的默认值(由应用程序首选项的 plist 定义)。

有关更多信息(尤其是表 1-2)和“参数域”段落,请参见文档中的此处。


参数域

参数域包含从命令行参数设置的值(如果您从命令行启动应用程序)并由NSArgumentDomain常量标识。从命令行设置的值由系统自动放入该域中。要向此域添加值,请在命令行上指定首选项名称(前面带有连字符)并在其后加上相应的值。例如,以下命令启动 Xcode 并将其IndexOnOpen首选项的值设置为NO

    localhost> Xcode.app/Contents/MacOS/Xcode -IndexOnOpen NO

从命令行设置的首选项临时覆盖存储在用户默认数据库中的既定值。在前面的示例中,将IndexOnOpen首选项设置为NO阻止 Xcode 自动索引项目,即使YES在用户默认数据库中将首选项设置为。

于 2012-10-03T12:58:13.510 回答