iOS UserDefaults一个注意点

使用UserDefaults保存了一个数据后,在本地沙盒中的plist文件并不是即时改变的,而是会根据系统状态自动在几秒钟之内改变,但是读取数据并不受影响。也就是说即使plist中的数据还没有改变,但是valueForKey取出的数据依然是修改后最新的数据。这里要注意一点,如果是使用的模拟器或者是真机编译,那么每次启动app的沙盒地址会改变。如果在前一次保存数据后,并且plist文件还没有来得及修改数据的时候重新cmd+R,那么数据就会修改失败。没用xcode重新编译,而是自己手动点击启动APP的话则不受影响,数据修改依旧有效。

你可能感兴趣的:(iOS UserDefaults一个注意点)