我有一个iOS应用程序,其中我有一个设置包。 root.plist是:
当我手动更改Item6>Titles>Item0
的值并运行它时,它会反映设备的应用设置页面中的更改。
现在,我做了一个运行脚本来将构建版本设置为此字段
build=`/usr/libexec/PlistBuddy -c "Print CFBundleVersion"
${PROJECT_DIR}/${INFOPLIST_FILE}`
/usr/libexec/PlistBuddy "$SRCROOT/Settings.bundle/Root.plist" -c "set PreferenceSpecifiers:6:Titles:0 $build"
Root.plist中项目的指定值已更改(我可以通过Xcode看到) 但它似乎并没有反映在设备上的应用程序设置中。
知道为什么吗?对这个奇怪的问题有什么解决方法?我错过了什么吗?
答案 0 :(得分:1)
Root.plist
允许您指定默认值。默认值仅在设置应用程序中使用(或以编程方式访问NSUserDefaults
时),只要没有实际值设置为属性,无论是以编程方式还是由用户设置。一旦设置了值(您提到,您为了测试目的而手动设置版本),将忽略默认值。
只需删除您的应用(设置也将被删除)并重新启动它。设备上的设置应用将显示新的默认值。