2016-09-18 45 views
-1

之間切換,我使用斯威夫特3:保存在文件數據丟失的模擬器iPhone 5S和6S,6S加

NSKeyedArchiver.archiveRootObject 

隨着模擬器選擇iPhone 5S的文件保存用戶註冊數據,當註冊會員登錄,我正在驗證用戶使用

NSKeyedUnarchiver.unarchiveObjectWithFile 

驗證成功,用戶可以登錄。

但是如果我切換到iPhone 6S或6S加模擬器,並使用相同的憑據,驗證不成功而用戶無法登錄

我希望仿真器之間的切換應該不影響數據存儲和檢索功能,任何人都會遇到與Swift 3(Xcode 7.3)類似的問題?

+0

不知道爲什麼downvote雖然。即使花了2.5小時左右,我也沒有在它周圍找到任何蘋果文件,因此在這裏問它。 – Naishta

回答

2

這是預期的行爲,它一直是這樣的。不同的模擬器就像不同的物理設備。

如果您有兩部手機並將應用程序放在一個手機上,那麼在沒有數據同步的情況下(例如iCloud),您不會希望在兩臺設備上都有相同的數據。這與模擬器一樣。

2

這就是它的工作原理。每個模擬設備都有自己的模擬沙箱,用於存儲文件。如果您查看~/Library/Developer/CoreSimulator/Devices/,則會看到每個模擬設備的條目。