2011-09-20 88 views
0

我正在開發一個帶有用戶日誌記錄設計的iPhone應用程序,我正試圖瞭解如何在同一個iPhone中爲每個用戶保存用戶數據和應用程序狀態。 例如,假設我的應用程序流程如下: 1.用戶登錄。 2.應用程序從核心日期獲取用戶朋友列表並顯示它。 3.在後臺應用程序從服務器獲取用戶好友列表並更新核心數據。如何在iPhone登錄類型應用程序中保存用戶數據

現在假設有兩個用戶同時使用同一個iPhone的應用程序我如何知道從核心數據加載到每個用戶的女巫數據?我可以知道巫婆應用程序狀態返回?

回答

0

首先,看起來很重要的一個問題,就是你爲什麼試圖這樣做。我相信你已經注意到,蘋果公司將iPhone設計成單一用戶設備。這就是爲什麼你沒有看到他們的應用程序(通常來自第三方的應用程序)允許多個用戶。這就是說,如果你完全確定你想要這樣做,那麼你顯然需要給用戶一些改變用戶賬戶的能力。你永遠不會知道一個人何時使用手機而不是另一個人,所以你必須提供切換用戶的能力,類似於用戶切換在OS X中的工作速度。

無論如何,你可能需要先從創建一個名爲「用戶」的額外核心數據實體。該實體應包含有關每個用戶的信息(姓名,暱稱,照片等)。然後,您需要創建一個從「用戶」實體到您用來存儲朋友列表的任何實體的關係。

您需要決定應用程序的行爲。當應用程序退出時,當前用戶是否會自動註銷?很難說,因爲你不知道下一步將使用哪個應用程序。

+0

嗨,感謝您的回覆,我的應用程序適用於單一用戶,如所有使用用戶登錄和密碼設計的應用程序,對不起,我很難解釋我的問題,所以生病嘗試使用示例:假設用戶登錄到應用程序後可以上傳配置文件圖片,並將該圖片保存到名爲「userPicture」的文件中。現在這個用戶註銷並且他的朋友使用相同的電話登錄,現在我的應用程序將加載「userPicture」,但這是以前的用戶圖片,而不是當前登錄的用戶圖片。 (圖片只是一個例子,與朋友列表或任何用戶數據一樣) – Eyal

+0

雅,我明白你在說什麼。您需要安排核心數據模型以允許多用戶環境。就像我說的 - 你需要創建一個新的實體來保存用戶。然後,將用戶實體的每個實例的關係添加到擁有好友列表的實體的實例中。每次新用戶登錄時,都會通過遍歷用戶實體與持有該實體的實體之間的關係來提取正確的用戶數據朋友名單。 – Carter

+0

好生病試試這個謝謝 – Eyal

0

我會爲用戶創建一個核心數據實體,並將其中的條目與好友列表條目鏈接起來。因此每個用戶應該有一個唯一的標識符。同樣在你的朋友列表實體中,應該有一個像「userId」這樣的鍵來保存對用戶的引用。

相關問題