2013-04-16 46 views
0

我有一個iOS應用程序,它爲註冊用戶提供一些服務給非註冊用戶和更多服務。自動重定向到查看,如果登錄 - iOS

每次打開應用程序時,它都會在默認訪客頁面上打開,我必須重新登錄。

我希望應用程序檢查用戶是否登錄,然後將他重定向到正確的頁面。

我正在使用故事板,我認爲這與didFinishLaunchingWithOptions:有關。

+0

我猜你沒有嘗試過任何東西,因爲問題的答案非常廣泛。 – Desdenova

+0

你的問題解決了嗎?你是在保存數據還是重定向頁面? –

+0

是的,現在解決了,我和兩個人都陷入了困境。我發現如何重定向在這個網址http://stackoverflow.com/questions/9828217/programmatically-call-storyboard-in-delegate和我瞭解如何將數據保存在此頁 – Nahar

回答

0

您可以使用NSUserDefaults來保存有關您的應用程序的信息。

當用戶成功登錄到您的應用程序時,您可以正確地存儲用戶的狀態。

//SETTING USER DEFAULTS 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:txtUsername.text forKey:@"Username"]; 
    [defaults setObject:txtPassword.text forKey:@"Password"]; 
    [defaults setObject:"true" forKey:@"LoginStatus"]; 
    [defaults synchronize]; 

    //RETRIEVING USER DEFAULTS 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    NSString *Username = [defaults objectForKey:@"Username"]; 
    NSString *Password = [defaults objectForKey:@"Password"]; 
    NSString *Status = [defaults objectForKey:@"LoginStatus"]; 

然後,一旦你有這個工作,你可以應用一些邏輯。

if ([Status isEqualToString:@"true"]) { 
     [self loginUser:Username :Password] 
    } 

------編輯------

有人在評論說,這可能是麻煩在這裏保存密碼。 轉至此:Queston以獲取散列密碼字符串的函數。

最後感謝所有投票給我的人。

+1

誰投了票,爲什麼?這個問題已經是模糊不清的了。我只是決定嘗試和幫助。也許我應該下次再考慮一下。 – Necro

+0

謝謝,這幫了我很多 – Nahar

+0

如果你喜歡這個答案,請按綠色的勾號。 – Necro

1

我真的不認爲@Necro在做什麼是必要的。

爲什麼不在每次將應用程序置於前臺時檢查活動會話,並且如果沒有該會話,則顯示(模態地)您的登錄視圖控制器而不顯示動畫。這種體系結構在註銷時會產生非常乾淨的邏輯,因爲您所做的只是清除會話,呈現登錄視圖控制器,並將主要導航層次結構彈出到其根視圖控制器。

簡單。