java如何引导用户进行特定的活动?
我正在开发一个应用程序,当用户第一次安装它时,在MainActivity(Launcher Activity)中,应用程序会询问他是哪种类型的用户(比如说司机或骑手)?根据用户选择,他被引导到相应的登录屏幕。用户登录后,他直接进入HomeActivity。如果他在不注销的情况下关闭应用程序,下次打开应用程序时,他应该直接看到HomeActivity(基于他选择的用户类型)。对于一个用户,main活动中的代码如下:
@Override
protected void onStart() {
super.onStart();
// Check if user is signed in (non-null) and update UI accordingly.
FirebaseAuth mAuth = FirebaseAuth.getInstance();
FirebaseUser currentUser = mAuth.getCurrentUser();
if (currentUser != null) {
sendToStart();
}
}
private void sendToStart() {
Intent startIntent = new Intent(MainActivity.this,DriverHomeActivity.class);
startActivity(startIntent);
finish();
}
我是Android和Firebase的新手。我不知道这应该如何为两种类型的用户完成
# 1 楼答案
您的问题可以通过使用
SharedPreference
机制来解决。 在这里,您可以在SharedPreference
中保持登录状态,如下:-当用户无法注销并返回时,应使用
SharedPreference
变量在启动屏幕中检查登录状态,并将用户移动到相应的活动布尔逻辑状态=prefs。getBoolean(“登录”,false)
小文档here
# 2 楼答案
您可以考虑在您的Android应用程序中保留^ {},它将决定进一步启动哪个活动。示例
LauncherActivity
可能如下所示您的应用程序只能有一个启动器,因此在
AndroidManifest.xml
中将LauncherActivity
标记为android应用程序的启动器,如下所示现在您可能已经注意到,我使用了一个标志(即
isLoggedInAsDriver
)从LauncherActivity
开始所需的活动。这是一个首选项数据,当您可以确定用户是驾驶员还是骑手时,需要将其存储在SharedPreferences
中。然后每次应用程序通过LauncherActivity
启动时,检查存储的值并获取用户类型。根据用户类型,启动第二个活动# 3 楼答案
在清单中使用此代码 而且 您应该在数据库中保存用户类型和用户ID,并在应用程序启动时首先检查这一点,然后显示主页