すべて正常に動作します。アプリケーションが実行され、私は家に帰ってマルチタスクビューアを介してアプリに戻っても、うまく動作します。しかし、一度それが実行され、私は引き出しからそれのアイコンを押すと、それはすでに "setPersistenceEnabled()"がすでに実行されているときに呼び出すため、クラッシュします。では、有効にする前に有効になっているかどうかを確認する方法はありますか?私のコード:setPersistenceEnabledがすでに有効になっているかどうかを確認するにはどうすればよいですか?
public class SplashActivity extends AppCompatActivity {
private FirebaseUser firAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getInstance().setPersistenceEnabled(true);
firAuth = FirebaseAuth.getInstance().getCurrentUser();
if (firAuth!=null) {
// User is signed in.
Intent intent = new Intent(this, Identificador.class);
startActivity(intent);
finish();
} else {
// No user is signed in.
Intent intent = new Intent(this, LoginActivity.class);
startActivity(intent);
finish();
}
};
}
お役に立てば幸いですFirebaseのチームメンバーからシングルトンを使用することを推奨しています。一例を示す。 –
この場合、シングルトンよりもブーリアンが良いと思います。シングルトンは、アプリケーションが閉じられた後、長い時間メモリに留まります。しかし、答えに感謝、私はそのスレッドを見ていない –