2013-05-05 112 views
2

我是一名網絡開發人員,也是Android的新手和學習...對於第一步,我使用PHP-MySQL Web服務製作了一個用戶登錄系統。Android在應用程序中保存登錄用戶的詳細信息

應用程序與Web服務進行很好的通信並檢查用戶是否存在。現在,如果用戶存在,它將返回用戶詳細信息,如果用戶存在。

我的問題就像在web應用程序中是否有android應用程序中的任何會話/ cookie處理?例如,如果我可以保存會話,則無需每次都登錄。

我相信有一種方法可以做到這一點,因爲許多應用程序正在使用此功能。但是因爲我是android新手請諮詢一下。

不知道一個正確的單詞googling。那是「SavePreferences」。

在此先感謝

回答

3

我想你在找什麼是SharedPreferences。這將數據持久地存儲在(鍵,值)對中,因此您可以說在登錄屏幕上有一個複選框,所以如果他們檢查它,那麼它將boolean存儲爲value,並將其用戶名作爲key。然後,當他們到達登錄屏幕並選擇他們的用戶名時,它會檢查該值,如果它是true那麼它不需要密碼。這是假設您允許多個用戶從應用程序登錄。

但是,如果你只有一個人從應用程序到該設備中登錄,那麼你可以從Web服務器當他們打開,他們可以跳過登錄屏幕的應用程序發回一個值。

除了鏈接,我上面提供的文檔,Here is a good example in the docs to get you started

如果您需要的東西比什麼SharedPreferences提供了更強大的,再看看文檔的Storage Options部分。希望這有助於

檢索首選項

SharedPreferences prefs = this.getSharedPreferences("john smith", 0); 
    saved= (prefs.getString("loginSaved", false)); 
if (saved) 
    // do stuff here 
else 
    // require login 
+0

因此,如果用戶選擇在救了他的登錄,應用程序將自動再次選擇自己的用戶名和密碼,並把它關閉要認證? – kabuto178 2013-05-05 05:14:22

+0

當然,根據你如何進行身份驗證,你可以打開你的'SharedPrefs',如果這個值是'true'(他們選中了一個盒子來第一次記住它們),那麼你可以將你需要的任何信息傳遞給服務器,可能存儲在另一個'SharedPrefs',數據庫或其他任何 – codeMagic 2013-05-05 05:18:11

+0

這將工作在同一設備上的多個用戶,或者我需要爲每個設置一個新的首選項。 – kabuto178 2013-05-05 05:25:20

相關問題