我正在尝试为Android应用程序实现以下工作流程:
理论上我认为我知道如何做到这一点。因此启动画面没有问题,使用共享首选项显示介绍一次也没问题,使用Firebase Auth检查登录状态也没问题。所以gettig不同的条件是没有问题的。
但实际上我遇到问题的方法是如何连接单个活动。
我应该使用splashscreen活动作为某种引导程序并在那里开始相应的活动吗?
SplashActivity的伪代码:
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
showCorrectActivity();
}
private void showCorrectActivity() {
if(introExecuted) {
if(userSignedIn) {
startActivity(main);
} else {
startActivity(signIn);
showCorrectActivity();
}
} else {
startActivity(intro);
showCorrectActivity();
}
}
}
或者我应该实现主要活动是“主”的某种流程?:
启动SplashActivity,重定向到main,检查主电源onCreate()
是否已显示intro,相应地启动,如果需要,继续从main开始登录。
还是一种完全不同的方法?任何最佳做法?
我在这里度过了一段难过的时光,所以非常感谢你提出任何建议!
答案 0 :(得分:0)
在我看来,你的方法是正确的。您可以使用splashScreen的时间来决定应该去哪个活动,这样用户就不会等待。
唯一一种情况,当我不这样做时,如果在你的飞溅中你必须异步调用Web服务。这将使用户的开始变慢。