现在我有三个活动:
HandleActivity
LoginActivity
MainActivity
当用户打开应用程序时,HandleActivity
会检查用户是否已登录,如果是,则会打开MainActivity
,如果用户未登录,则会打开LoginActivity
}。
有没有更好的方法在Android上实现登录?
答案 0 :(得分:1)
如果您正在使用共享偏好设置,请检查共享首选项(如果数据存在),然后转到主要活动其他地方登录活动。 如果使用数据库存储数据,则检查表数据的大小
try {
if (UserdataController.getSingletonInstance().getUserdata(this).size() > 0) {
Fragment dashboardFragment = new DashboardFragment();
android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.add(R.id.framlayout, dashboardFragment);
// fragmentTransaction.addToBackStack("dashboard");
fragmentTransaction.commit();
} else {
Fragment loginFragment = new LoginFragment();
android.support.v4.app.FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.add(R.id.framlayout, loginFragment);
fragmentTransaction.commit();
}
}
catch (SQLException e){
}
答案 1 :(得分:1)
您不必拥有HandleActivity
。当用户打开应用时,请始终显示您的MainActivity
。如果用户未登录,请重定向到LoginActivity
。
MainActivity onCreate() {
if(isLoggedIn)
loadContent()
else
redirectToLoginActivity()
}