0

共有設定をクリアして終了する関数:

   SharedPreferences prefs = getSharedPreferences(
                    AppConstants.LOGIN_PREFS, Context.MODE_PRIVATE);
            SharedPreferences.Editor editor = prefs.edit();
            editor.remove( "loggedin");
            editor.remove( "regloggedin");
            editor.remove( "activationloggedin");
            editor.remove("userdetailloggedin");
            editor.clear();
            editor.commit();
            finish();

            Intent intent = new Intent(Intent.ACTION_MAIN);
            intent.addCategory(Intent.CATEGORY_HOME);
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(intent);

マニフェスト ファイル:

 <activity
            android:name=".activity.FirPageflipMainActivity"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <!--FirPageflipMainActivity-->

        <activity android:name=".activity.RegitsraionPage" />
        <activity android:name=".activity.ActivationCode" />
        <activity android:name=".activity.userdetail" />
        <activity android:name=".activity.SplashScreen" />
        <activity android:name=".activity.MainActivity" />
        <activity android:name=".activity.Mainactvityfortab" />
        <activity android:name=".activity.Mainactvityfortab1" />
        <activity android:name=".activity.Mainactvityfortab2" />
        <activity android:name=".activity.Mainactvityfortab3" />
        <activity android:name=".activity.Prodculistitem" />
        <activity android:name=".activity.Itemdescription" />
        <activity
            android:name=".activity.DeliverDetail"

            android:windowSoftInputMode="stateHidden" />
        <activity android:name=".activity.Serchactvity" />
        <activity android:name=".activity.FinalypaymentDetail" />
        <activity android:name=".activity.Paytm" />

        <activity android:name=".activity.ConfirmationOrder" />

私の最初のページ FirPageflipMainActivity の最初の 4 つのアクティビティは、登録後に終了します。共有設定値からアプリを削除およびクリアして終了するための特定のコードを呼び出すと、メイン アクティビティに [サインアウト] ボタンがあります。 FirPageflipMainActivity である開始ページから開始する必要があります。どこが間違っているのか教えてください。

4

2 に答える 2

2

これらの変更を行ってみてください:

    SharedPreferences prefs = getSharedPreferences(
                    AppConstants.LOGIN_PREFS, Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = prefs.edit();
    editor.clear();
    editor.commit();

    Intent intent = new Intent(getApplicationContext(), FirPageflipMainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);

    this.finish();

お役に立てれば。

于 2015-12-12T07:13:35.723 に答える
0

Utility クラスまたは Activity または Fragment でメソッド resetsetSharedPreferences を作成します。

public static void resetsetSharedPreferences(Context context,
                                                 String sharedPrefname) {
        SharedPreferences mPrefs = context.getSharedPreferences(sharedPrefname,
                Context.MODE_PRIVATE);
        mPrefs.edit().clear().commit();
    }

そして、サインアウト中にこのメソッドを呼び出すだけです

resetsetSharedPreferences(getActivity().getApplicationContext(), AppConstants.LOGIN_PREFS);

 Intent intent = new Intent(getApplicationContext(), FirPageflipMainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); 
    startActivity(intent);
于 2015-12-12T07:05:30.140 に答える