在我的应用程序中,我使用ksoap2库来验证android中的用户名和密码。现在我想知道,这是存储常用信息的最佳和最安全的方式,这样我就可以在任何其他屏幕上获取该信息而无需使用ksoap请求我的网络服务器。
我来自网络背景,所以我知道在网络中我们将用户信息存储在会话或cookie中。会话在服务器上进行,并且cookie存储在本地计算机上。
我也读过关于android中的cookie,但我不知道它是如何工作的以及它保存在哪里。
请让我知道我该怎么做?如果您知道任何可以帮助我学习这个东西的教程,那么请发布它。提前谢谢。
答案 0 :(得分:1)
您可以使用SharedPreference以键值对的形式存储信息。
private SharedPreferences myUserPrefs;
private SharedPreferences.Editor myUserEdit;
myUserPrefs = getApplicationContext().getSharedPreferences("name of shared preference", Context.MODE_PRIVATE);
myUserEdit = myUserPrefs.edit();
在SharedPreference中保存一些信息:
myuserEdit.putString("key", "value");
myUserEdit.commit();
获取一些值:
String=myUserPrefs.getString("key", "default value");
答案 1 :(得分:1)
示例代码:
save:
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = settings.edit();
editor.putString("username", yournamestored);
editor.commit();
get:
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(context);
String ret = settings.getString("username", "defaultname");
cookies string等等。
答案 2 :(得分:0)
Shared Prefrence是您的短数据存储和共享问题的最佳选择。但是如果您需要,您也可以使用SQLlite dbase ..对于Android中的更多存储选项,请看下面的
http://developer.android.com/guide/topics/data/data-storage.html
答案 3 :(得分:0)
Cookie和会话在Android中不起作用。您必须根据需要使用共享首选项或静态变量。
如果每次应用程序启动时验证用户,那么最好使用静态 变量或
如果您在安装应用程序时仅验证用户一次,则最好使用共享首选项