Когда действие taskAffinity вызывает finish (), но оно не закрывает последние приложения - PullRequest
0 голосов
/ 26 ноября 2018

У меня задание taskAffinity, которое равно BActivity, а AActivity - обычное действие.

AActivity вызывает BActivity с помощью функции ниже startActivity.После выполнения BActivity's заданий BActivity вызывает функцию finish();, но BActivity не закрывает последние приложения.

startActivity:

Intent intent = new Intent(AActivity.this, BActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP
                | Intent.FLAG_ACTIVITY_MULTIPLE_TASK
                | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

Где я делаю неправильно?

AndroidManifest:

          <activity
            android:name=".BActivity"
            android:excludeFromRecents="true"
            android:exported="true"
            android:launchMode="singleTask"
            android:taskAffinity=".AActivity">
            <intent-filter>
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
          </activity>

          <activity
             android:name=".AActivity"
             android:configChanges="locale"
             android:screenOrientation="portrait"
             android:windowSoftInputMode="stateHidden|adjustPan" />

1 Ответ

0 голосов
/ 26 ноября 2018

Попробуйте использовать для верхнего SDK 21

finishAndRemoveTask();

и для нижнего 21 использования

finish();
...