Settings.bundle限制

时间:2011-07-24 01:00:51

标签: iphone ipad passwords settings settings.bundle

我有一个需要密码的应用程序,该密码在应用程序本身中设置。但是,一旦设置了密码,如果用户忘记密码并需要重置密码,我认为我们可以在Settings.bundle中重置密码,并希望设备会提示输入密码才能进行此类更改。

目标是只有设备的所有者才能重置密码。如果其他人重置密码,他们将无法访问该应用程序。

我研究过并发现第三方开发者不能使用按钮(如Safari的“清除历史记录”和“清除缓存”)。

我在Settings.bundle中创建了一个Toggle Switch,它以“Off”开头并标有“Reset Password”。当用户切换此项并返回应用程序时,它会提示他们设置新密码。

但是 - 我找不到一种方法可以在此时以编程方式将首选项中的切换更改回“关闭”,这样每次从用户打开应用程序时都不会提示用户设置新密码除非他们返回设置并关闭切换开关。

我开始认为这根本不可能。有没有人知道更多可以插话的内容?

问题的第二部分是,是否有办法要求用户输入他们的设备密码才能进行更改?如果有办法提示设备密码,我将能够使用它作为安全措施,以允许他们重置密码。

非常感谢大家的帮助!

1 个答案:

答案 0 :(得分:1)

应用程序设置中存储的数据可通过NSUserDefaults获得。您可以使用boolForKey:方法获取ToggleSwitch的状态,并将交换机的标识符作为参数传递。您还可以使用setBool:forKey方法设置其状态。