Android中登陆如何实现持久化,第一次登陆后第二次自动登陆功能,求大神赐教!!!!最好有核心源码,谢谢!!

雨季云 2015-09-01 11:02:31
Android中第一次登陆成功后,退出关闭程序后,第二次进入的时候自动登陆功能,求大神使用源码砸我吧!!!!谢谢
...全文
5798 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr_小飞 2018-10-13
  • 打赏
  • 举报
回复
1 楼???自动登录 不用走 登录接口???  不做单点登录  我要是换个设备修改密码呢????
abliufanglin 2015-12-09
  • 打赏
  • 举报
回复
要用cooking做持久化登录
z463135048 2015-09-01
  • 打赏
  • 举报
回复
引用 1 楼 ziyiwangchen 的回复:
我就给你说下流程,其它的还要自己实现了 ,很简单 第一步 首先创建一个MainActivty, 在AndroidManifest.xml中声明一下 <activity android:name=".MainActivty" android:label="@string/app_parent_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 第二步 肯定有个SiginActivity登陆界面 在这里面首先第一次登陆成功后你把用户名和密码保存下来 用SharedPreferences来保存 第三步 再次启动程序的时候 ,肯定会走MainActivty,重点就在这里了 , 你首先去SharedPreferences去取你保存的用户名和密码, 1.首先判断用户名和密码是否为空,如果为空的话那就直接进入登陆页面, if(textUtils.isEmpty(userNmae) && testUtils.isEmpty(passWord)){ this.startActivity(new Intent(this.getApplicationContext(), CESigninActivity.class)); finish(); }else{ Intent intent = new Intent(MainActivity.this, MainTabActivity.class); startActivity(intent); finish(); //这样就实现了自登陆 //直接走一遍登陆接口,再次把你的用户名和密码保存下来 } 总结 : 大致的自动登录就是这样的 , 还有很多细节需要自己去处理. 第一次程序启动的时候肯定会走MainActivity,你取的用户名和密码肯定为空的,

// 上面的构造方法调这个构造方法 
	private Context context;
	private SharedPreferences sp = null;
	private Editor edit = null;
	public SharedPreferencesUtil(Context context, SharedPreferences sp) {
		this.context = context;
		this.sp = sp;
		edit = sp.edit();
	}
z463135048 2015-09-01
  • 打赏
  • 举报
回复
写在SharedPreferences里面 下次登录从里面提取值 关键代码示例:
	
// 构造方法
public SharedPreferencesUtil(Context context, String filename) {
		this(context, context.getSharedPreferences(filename,
				Context.MODE_PRIVATE));
	}
// 设置值
	public void setValue(String key, String value) {
		edit.putString(key, value);
		edit.commit();
	}
// 获取值
	public String getValue(String key, String defaultValue) {
		return sp.getString(key, defaultValue);
	}

// 实现
private SharedPreferencesUtil mSharedPreferencesUtil;
mSharedPreferencesUtil = new SharedPreferencesUtil(this, "user");
// 获取账号密码
String account = mSharedPreferencesUtil.getValue("account", "");
		String pwd = mSharedPreferencesUtil.getValue("pwd", "");
//  设置账号密码
mSharedPreferencesUtil.setValue("account",account);
					mSharedPreferencesUtil.setValue("pwd", pwd);
筱蒙 2015-09-01
  • 打赏
  • 举报
回复 1
我就给你说下流程,其它的还要自己实现了 ,很简单 第一步 首先创建一个MainActivty, 在AndroidManifest.xml中声明一下 <activity android:name=".MainActivty" android:label="@string/app_parent_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 第二步 肯定有个SiginActivity登陆界面 在这里面首先第一次登陆成功后你把用户名和密码保存下来 用SharedPreferences来保存 第三步 再次启动程序的时候 ,肯定会走MainActivty,重点就在这里了 , 你首先去SharedPreferences去取你保存的用户名和密码, 1.首先判断用户名和密码是否为空,如果为空的话那就直接进入登陆页面, if(textUtils.isEmpty(userNmae) && testUtils.isEmpty(passWord)){ this.startActivity(new Intent(this.getApplicationContext(), CESigninActivity.class)); finish(); }else{ Intent intent = new Intent(MainActivity.this, MainTabActivity.class); startActivity(intent); finish(); //这样就实现了自登陆 //直接走一遍登陆接口,再次把你的用户名和密码保存下来 } 总结 : 大致的自动登录就是这样的 , 还有很多细节需要自己去处理. 第一次程序启动的时候肯定会走MainActivity,你取的用户名和密码肯定为空的,
小裴同学 2015-09-01
  • 打赏
  • 举报
回复
2楼太辛苦了。。。
gao_chun 2015-09-01
  • 打赏
  • 举报
回复
SharedPreferences存起来,下次进去的时候直接取出来判断便可
月盡天明 2015-09-01
  • 打赏
  • 举报
回复
1楼正解。。。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧