今天和大家分享一个在android很常用的一个功能-**自动登入**
由于为了方便,我就不准备做的很深入的,仅是把数据保存在本地,又因为在android手机上只能登入单个用户,也就是可以把数据临时保存,连本地数据库都是可以省略的。所以我选用了*SharedPreferences*这个关键字进行编写。
1.每次启动LoginActivity的时候先进行判断SharedPreferences是否存在数据,
如果存在了就直接跳转到MainActivity界面,如果不存在的话就进行输入账户信息并且保存在本地,然后跳转到MainActivity界面
2.在MainActivity界面点击退出按钮的时候,清空SharedPreferences的数据
附录:
存在数据的情况:
*SharedPreferences preferences = getActivity().getSharedPreferences(
BriefcaseConstants.USERNAME, getActivity().MODE_PRIVATE);
if (!(preferences.getString(BriefcaseConstants.USERNAME, “”).equals(“”))) {
startActivity(new Intent(getActivity(), MainActivity.class));
}*
不存在数据的情况,点击登入按钮添加数据:
SharedPreferences sp = getActivity() .getSharedPreferences(BriefcaseConstants.USERNAME,getActivity().MODE_PRIVATE);
Editor editor = sp.edit();
editor.putString( BriefcaseConstants.USERNAME, ((User) oj).getUsername()); editor.putString(BriefcaseConstants.PASSWORD, ((User) obj).getPassword()); editor.commit();
点击退出按钮:
SharedPreferences sp = getActivity().getSharedPreferences(
BriefcaseConstants.USERNAME, getActivity().MODE_PRIVATE);
Editor editor = sp.edit();
editor.putString(BriefcaseConstants.USERNAME, "");
editor.putString(BriefcaseConstants.PASSWORD, "");
editor.commit();