我是新手android世界,我有一個關於保存設置的問題。我會試着用一個例子來解釋它。我們假設我們有一個類似於gmail的android應用程序,用戶在該應用程序中同步一個帳戶。登錄/密碼在哪裏存儲,以便即使關閉手機,他們仍然在那裏?它們是否存儲在數據庫中的SharedPreferences中,單獨的文件中?任何解釋將不勝感激。何處在android中保存數據
-1
A
回答
0
谷歌和其他這樣的公司使用會話來識別用戶。他們不會在您的手機中存儲密碼。首次登錄後,服務器將向用戶發出一個唯一的會話ID,應用可能會將其存儲在SharedPreferences中,然後,每個連續的服務器請求都必須發送此會話ID進行身份驗證。在你的情況下,你可以很好地存儲SharedPreferences中的任何設置,但不建議存儲密碼。如果您需要存儲大量數據,例如您正在創建具有各種功能的遊戲,則可以使用SQLite數據庫來存儲和檢索數據。
編輯: 首先,使用HttpUrlConnection發送用戶名和密碼到您的服務器。在此之後,我們需要從服務器響應頭中提取cookie。 下面的代碼演示瞭如何從服務器響應獲取的cookie:
String[] tokens;
List cookies = conn.getHeaderFields().get("Set-Cookie");
if (cookies != null) {
for (int i = 0; i < cookies.size(); i++) {
String cookieString = (String) cookies.get(i);
tokens = cookieString.split(";");
List<String> cookieHeaders = new ArrayList<>();
for (String str : tokens) {
if (str.contains("httponly")||str.contains("HttpOnly")) {
str = str.trim();
cookieHeaders.add(str);
} else {
Log.d("loginactivity","str "+str);
str = str.substring(0, str.indexOf("=")).trim();
cookieHeaders.add(str);
}
}
String token = cookieString;
}
}
您可以把令牌共享偏好:
sharedPreferences.edit().putString("token", token).apply();
在此之後,添加餅乾任何連續的請求到服務器。
String cookie = sharedPreferences.getString("token","");
httpConn.setRequestProperty("Cookie",cookie);
0
您可以保存SQLite數據庫上的數據。您的應用需要訪問文件系統權限。
相關問題
- 1. 如何在Android中保存數據?
- 2. 如何在Android中保存數據庫?
- 3. 在android上保存數據
- 4. Codeigniter Cart - 在數據庫中保存數據 - 如何處理?
- 5. 在Android SDK(jar)中保存數據
- 6. 將數據保存在Android WebView中
- 7. 在android中保存結構化數據
- 8. 在Android中保存LogCat的數據
- 9. 如何查看保存在android數據庫(SQLite)中的數據?
- 10. 在Android中將數據保存在數據庫中
- 11. 在中斷處保存countTimer()(Android)
- 12. Android數據庫保存
- 13. android數據保存目錄
- 14. 保存數據SharedPreferencies的Android
- 15. 保存Android的setOnItemClickListener數據
- 16. Android保存玩家數據
- 17. Android RadioGroup保存數據
- 18. Mono for Android保存數據
- 19. 如何在Yii中保存數據並確保正確保存?
- 20. 如何在Android中的SQLite數據庫中保存多個值?
- 21. 如何在android中的sqlite中保存double數據類型值
- 22. Android:如何保存/恢復數據
- 23. 如何使用android webview保存數據
- 24. Android,如何保存持久性數據?
- 25. Android如何保存簡單的數據
- 26. Android碎片 - 如何保存數據?
- 27. 如何將緩存數據保存到sqlite數據庫(android)
- 28. Android清單文件數據在Android中保存在哪裏?
- 29. Android Studio將數據保存在數據庫中
- 30. 數據未能成功保存在Android中使用數據庫
我需要爲我的應用程序提供授權功能。我可以肯定地發送會話令牌給應用程序。你能否提供有關該主題的更多信息? – kDoyle