2011-06-22 75 views
7

在我的iPhone Facebook應用上,我想我只登錄過一次。如何讓用戶永久登錄iPhone應用程序?

在我的Mint財經應用上,我登錄過一次。每當我加載它時,我都會給出一個四位數的PIN碼,它是在應用程序中設置的,我不必再次登錄。

我正在構建一個應用程序,現在這種行爲將是非常有益的。

他們是否只是設置某種類型的認證cookie,並將其設置爲未來的方式?還是有另一種處理這種方式?

謝謝!

回答

1

我正在刺傷在黑暗中在這裏,但:

我假設的登錄信息進行加密,然後某處存儲在設備上。在創建應用程序的新實例時,這些數據會發送到站點以供所有oauth/login/etc的東西使用。完成此操作後,Facebook應用將保持打開狀態,直到:1)設備關閉,或者2)手動退出應用程序。

也許這會開始幫助你,但我相信會有更好的答案。

+0

找到一些基本說明我可以重新啓動我的設備,但我仍然登錄到Facebook。 –

+0

這似乎是一個類似的問題:http://stackoverflow.com/questions/4785568/iphone-ios-facebook-sdk-can-you-log-in-within-the-app-and-keep-the-login -cre 還有很多 – cwoodall

3

這取決於您的應用程序的上下文。如果您針對另一個API進行身份驗證,則API的供應商通常會爲您提供某種身份驗證密鑰,該密鑰可能會在某段時間後過期。一旦用戶執行認證步驟並將其用於每個請求,您就可以將此密鑰存儲在您的應用程序中。

基本上,您必須存儲的數據以及用戶必須重新進行身份驗證之前的時間取決於您正在使用的API的供應商。

+0

我基本上是將API編寫爲一些RESTful調用。 –

+0

爲了簡單起見,我寫了一次api並使用會話cookie。我在用戶驗證後將cookie存儲在iphones文件系統中,並在啓動時將其推送到應用程序cookie jar。 –

+0

我會試一試。 –

2

我不能說Facebook或Mint,但最簡單的方法是使用cookie /令牌並將其存儲在NSUserDefaults中。

當應用程序啓動時,查看令牌是否仍然有效。如果無效,請強制用戶重新登錄。