如何强制应用程序设置包更新?

时间:2010-01-28 19:34:40

标签: iphone settings ios-simulator plist bundle

应用 Settings.bundle包含版本号,该版本号在构建期间自动生成。从构建日志中我可以看到在那里写入新值,在MacOS X Finder中查看文件本身时,我看到了正确的更新值。

iPhone模拟器或真实 iPhone中的设置向我显示旧值。到目前为止,删除应用程序并重新安装是我设法获取新更新值的唯一方法。

问题:如何强制iPhone设置应用程序读取我新的最新更新的捆绑文件?

一些背景信息,可能相关也可能不相关:我只通过Xcode将应用程序安装到模拟器和iPhone中。这是问题吗?只是found this in Apple docs,不确定它实际上是什么。似乎自相矛盾(最后一章)......

  

每次重新安装应用程序时,iPhone OS都会执行全新安装,删除之前的所有首选项。换句话说,从Xcode构建或运行应用程序总是安装新版本,替换任何旧内容。要测试连续执行之间的首选项更改,必须直接从模拟器界面运行应用程序,而不是从Xcode运行。

所以Xcode总是替换旧内容,但为了测试更改我不能使用Xcode?那是什么?完成两个(通过Xcode安装后)并且未在设置中看到新值。任何想法它是如何实际工作的?我是否总是要安装非Xcode?

4 个答案:

答案 0 :(得分:5)

尝试清洁和建造。似乎xcode缓存日期并且没有注意到脚本所做的更改。我有类似的事情发生,干净总是修复它,但它确实是一个麻烦。

答案 1 :(得分:1)

确保关闭在设备后台运行的“设置”应用。看起来设置会在设置运行时缓存设置 - 但在重新启动“设置”应用时会提取更新的值。

答案 2 :(得分:0)

我刚试过这个并且有效。 在Xcode中转到:窗口 - >管理器, 然后在连接的iPad / iPhone上查看已安装的应用程序,删除应用程序,然后重新编译并在设备上运行您的应用程序。 我认为这个问题与iPad的缓存有关。

答案 3 :(得分:0)

就我而言,似乎我通过Xcode属性列表编辑器创建/编辑的修改后的root.plist似乎没有被保存。

将设置包复制到iPad时完全没有问题。快速cmd-S然后立即在iPad上进行重建和调试/调试更新设置 - 甚至不需要卸载/重新安装应用程序。你认为Xcode至少会有一个没有保存的警告,因为总有代码源文件。