私の要件は、私のアンドロイドアプリケーション内では初めてとその後のGoogleの記号を区別することです。初めてのユーザーのGoogleログインでは、ユーザーをプロフィール画面にリダイレクトして、連絡先の詳細に関する追加情報を記入します。彼の最初のGoogleログイン後、すべての後続のGoogleログイン、プロファイルの詳細をもう一度記入することなく、ユーザーをホーム画面に直接誘導したい。私はバックエンドにFirebaseを使用します。私はいくつかのスタックオーバーフローの質問に続き、以下のリンクを提供してきました。の共有設定は、サインイン
リンク1: Correct code location to check Firebase if a user has been created already?
私は私が行方不明ですかを把握できなかった、単純なバグ、と私の要件を達成することができました。初めてのGoogleログインはプロフィール画面に向けられ、その後のリクエストはホーム画面にリダイレクトされます。しかし、私が試したことは、ユーザーがアプリを閉じるまで起こるだけです。ユーザーがアプリケーションを閉じてもう一度開くと、ユーザーはプロファイル画面にリダイレクトされますが、これは発生しません。ユーザーがGoogleにログインしてプロフィールに登録すると、以降のすべてのリクエストはホーム画面に移動する必要があります。
私のバグ:。ユーザーはアプリを閉じ、ユーザーがGoogleの記号をプロファイル画面にリダイレクトされるここで、再度、再度開いたら、私は
SignInActivity.java
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(SignInActivity.this);
if (firebaseAuth.getCurrentUser() != null) {
if (!sharedPreferences.contains(String.valueOf(Preferences.FIRST_LAUNCH))) {
Intent contactDetailsIntent = new Intent(SignInActivity.this, ContactDetailsActivity.class);
startActivity(contactDetailsIntent);
sharedPreferences.edit().putBoolean(String.valueOf(Preferences.FIRST_LAUNCH), true).commit();
} else {
Intent loginIntent = new Intent(SignInActivity.this,MainMenuActivity.class);
startActivity(loginIntent);
finish();
}
}
を試してきたものです
ここに私の好みのクラスです。
public class Preferences {
public static final boolean FIRST_LAUNCH = false;
public static final String NAME = "fullName";
public static final String EMAIL = "email";
public static final String USERID = "userId";
public static final String USER_TYPE = "userType";
}
問題の原因を特定できません。何か助けがあります