diff --git a/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceController.java b/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceController.java index f8816fe13a8..e6ac6069d9a 100644 --- a/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceController.java +++ b/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceController.java @@ -98,7 +98,8 @@ public class FirmwareVersionDetailPreferenceController extends BasePreferenceCon final Intent intent = new Intent(Intent.ACTION_MAIN) .setClassName( - "android", com.android.internal.app.PlatLogoActivity.class.getName()); + "android", com.android.internal.app.PlatLogoActivity.class.getName()) + .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { mContext.startActivity(intent); } catch (Exception e) { diff --git a/tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceControllerTest.java index 2d68014db03..420b9a337b4 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionDetailPreferenceControllerTest.java @@ -25,6 +25,7 @@ import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.content.Context; +import android.content.Intent; import android.os.Build; import android.os.UserManager; @@ -33,6 +34,7 @@ import androidx.preference.Preference; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; @@ -85,7 +87,13 @@ public class FirmwareVersionDetailPreferenceControllerTest { mController.handlePreferenceTreeClick(mPreference); - verify(mContext).startActivity(any()); + final ArgumentCaptor captor = ArgumentCaptor.forClass(Intent.class); + verify(mContext).startActivity(captor.capture()); + assertThat(captor.getValue().getAction()).isEqualTo(Intent.ACTION_MAIN); + assertThat(captor.getValue().getComponent().getPackageName()).isEqualTo("android"); + assertThat(captor.getValue().getComponent().getClassName()).isEqualTo( + com.android.internal.app.PlatLogoActivity.class.getName()); + assertThat(captor.getValue().getFlags() & Intent.FLAG_ACTIVITY_NEW_TASK).isGreaterThan(0); } @Test