我不希望我的應用在啓動後立即要求登錄。相反,我想提醒用戶以「每個需要」爲基礎登錄。因此,例如,如果用戶與需要他登錄的部分應用程序進行交互,那麼只有登錄提示符纔會出現。如何處理懶惰登錄?
我有幾個問題:
1)有沒有人做過這種「懶惰」登錄前,如果有什麼你的經驗了?管理是否尷尬?這對用戶來說是一種令人困惑的體驗嗎?
2)什麼是最好的實施方式?
我有一個提示用戶登錄一個LoginViewController。我希望以當前可見的視圖控制器視圖的頂部顯示該視圖控制器。
我也像其他各種視圖控制器一無所知的LoginViewController,以儘量減少耦合。
理想我有一些LoginManager單這將管理任何與登錄。
再比如說,如果MyCoolViewController需要用戶驗證有一定的功能,就像一個按鈕,一些隨機的視圖控制器被按下時,可以調用:
- (void)buttonPressed:(id)sender {
// If the user isn't logged in, show the login modal view on top of this VC
if (![[LoginManager sharedManager] requireLoginWithViewController:self]) {
return;
}
// Code that is protected by login
}
但是,然後我需要一種方法來知道登錄是否成功。這可以通過委託或回調來解決,但意味着視圖控制器都知道一些我想避免的LoginController。
另一種方法是創建的UIViewController的ProtectedViewController子類,所有我的視圖控制器將子類,並會在需要時訪問受保護的功能,並且呈現所述登錄控制器提供的功能性。
您如何看待這些方法?還有什麼更有意義嗎?我很想聽聽你有關「懶惰」登錄的體驗。
這似乎是一個有效的實現。只要確保沒有任何東西不會讓身份盜用者看到:) – Undo 2013-04-11 20:37:04
您是否需要讓他們註冊? – 2013-04-11 20:40:49