我应该如何在Android应用程序中处理会话密钥?
客户端将在登录后从服务器收到密钥和序列号,每次客户端发出新请求时,都会更改序列号。密钥将在到期或销毁之前保持不变。 这些将需要在每个https请求中发送。
以下是密钥和序列号的示例
key: af9bce267343ad72bd6abe7aff58edf2
S/N: 503:960:819
我是否应该使用SQLIte数据库,即使绝对最多只有1个会话。
答案 0 :(得分:2)
SQLite数据库将使用大锤来破解坚果。我会将信息存储在应用程序的SharedPreferences
:
String myKey = "af9bce267343ad72bd6abe7aff58edf2";
String mySerial = "503:960:819";
SharedPreferences pref = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor edit = pref.edit();
// Set/Store data
edit.putString("session_key", myKey);
edit.putString("serial", mySerial);
// Commit the changes
edit.commit();
每当您想要再次检索值时,请使用:
SharedPreferences pref = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
String myKey = pref.getString("session_key", null);
String mySerial = pref.getString("serial", null);
答案 1 :(得分:1)
您可以使用SharedPreferences
,保存这样的值
SharedPreferences sharedpreferences = getSharedPreferences("mPref", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putString("token", mToken);
editor.commit();
并像这样检索它
sharedpreferences = getSharedPreferences("mPref", Context.MODE_PRIVATE);
String token = sharedpreferences.getString("token", null);
答案 2 :(得分:0)
您可以将其存储在mysqlite数据库或共享首选项
中