android 判断用户是否第一次登陆

一、软件运行时判断用户是否第一次使用此软件,如果是第一次使用则进入登陆页面,进行登陆。
如果不是第一次使用且以前登陆成功过则不进入登陆页面而是直接进入主页面。
二、我现在的问题是,我按这个逻辑走,我登陆成功了,下次打开软件也跳到主页面了,可是没进来主页面都是在登陆页做判断,判断第一次登陆成功存储SharedPreferences的值是否存在,可是出现的效果不是我想要的,它是先出来登陆页出不多要一秒自己就跳到主页面了。我不想让它出现登陆界面再跳到主页面,这样会让用户很奇怪

阅读 19.5k
5 个回答

那是因为你在登陆界面的显示之后(setContentView())才进行判断。
现在一般的方法都是打开先进入加载页,2-3秒后再跳转至主页或者登陆页。

通常的做法是在loading页中判断是否登录完成。然后跳转到相关到Activity。

可以再loading的Activity与登录结合,loading的layout盖阿紫上面就行,要是加载完了判断下是不是有登入信息,没有就显示下面的图层,有就进入下一个Activity

新手上路,请多包涵

在启动页面进行判断,if SharedPreferences 存在且正确,跳到主界面;else 跳到登陆界面。

问题很简单,不要再登录页面判断,从逻辑上来说,你就应该在登录页面呈现之前做出决断。
如:

if (noLoginInfo) {
    startLoginActivity();
    // or showLoginFragment();
} else {
    startMainActivity();
    // or showMainFragment();
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题