我有一种方法,可以从firebase
数据库中获取用户的详细信息和一些数据。
问题在于,该方法在启动应用程序后被调用两次或三次,而在我从其他任何活动返回时再次被调用。
我已经将该方法放在onCreate
方法中,如下所示:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
checkAuthState();
}
我确定我没有在
checkAuthState()
或onStart()
方法中调用onResume()
。这就是我从其他活动中导航的方式:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
请让我知道为什么
checkAuthState()
会被三次调用,为什么从其他活动中导航时又会再次被调用,以及在应用启动后如何只调用一次此方法?很抱歉,如果问题的格式似乎不正确。我还是初学者!
最佳答案
创建启动器活动以检查AuthStatus。
开始一个新的活动并终止启动器活动。