Ich habe eine Methode, in der ich Benutzerdaten und einige Daten von firebase
Datenbank abrufen.Wie ruft man eine Methode nur auf, wenn die App gestartet wurde? Bitte sehen Sie Details
Das Problem ist, dass die Methode nach dem Start der App zweimal oder dreimal aufgerufen wird und wenn ich von anderen Aktivitäten zurück navigiere.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
checkAuthState();
}
Ich bin sicher, dass ich genannt habe nicht checkAuthState()
in onStart()
oder onResume()
Methoden:
Ich habe diese Methode in onCreate
Methode wie folgt setzen. Diese
ist, wie ich bin zurück aus anderen Tätigkeit Navigation:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
onBackPressed();
return true;
}
return super.onOptionsItemSelected(item);
}
Bitte lassen Sie mich wissen, warum checkAuthState()
wird dreimal genannt zu werden und warum es wird immer wieder aufgerufen, wenn wieder von einer anderen Aktivität navigiert und wie man Rufen Sie diese Methode nur einmal auf, wenn die App gestartet wurde?
Sorry, wenn die Frage scheint falsch formatiert zu sein. Ich bin noch ein Anfänger!
möglich Duplikat http://stackoverflow.com/questions/3588682/is-it-normal-for-the-activity-oncreate- method-to-be-request-multiple-mal die Lösung besteht darin, den onSaveInstanceState zu verwenden, um den Authentifizierungsstatus zu überwachen – liminal