From 5fc96844e53b41d26bfd64faeb75271b72823320 Mon Sep 17 00:00:00 2001 From: Yi-Ling Chuang Date: Fri, 10 Sep 2021 15:52:14 +0800 Subject: [PATCH] Correct how the injection mechanism starts activities Settings Injection used to start activities with startActivityForResult() and its extension, where there was not result really being handled. Hence, this CL corrects the way it starts activities by removing the "ForResult" part. Fixes: 197704126 Test: robotest and launch Android Auto to see it being launched in another task. Change-Id: I259b2555cf62f8966afdf664b337af5f216b3843 --- .../dashboard/DashboardFeatureProviderImpl.java | 8 ++++---- .../DashboardFeatureProviderImplTest.java | 16 ++++++++-------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java index a03a4f9b301..4581f6caba8 100644 --- a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java +++ b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java @@ -422,19 +422,19 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider { mMetricsFeatureProvider.logStartedIntent(intent, sourceMetricCategory); if (tile.userHandle == null || tile.isPrimaryProfileOnly()) { - activity.startActivityForResult(intent, 0); + activity.startActivity(intent); } else if (tile.userHandle.size() == 1) { - activity.startActivityForResultAsUser(intent, 0, tile.userHandle.get(0)); + activity.startActivityAsUser(intent, tile.userHandle.get(0)); } else { final UserHandle userHandle = intent.getParcelableExtra(EXTRA_USER); if (userHandle != null && tile.userHandle.contains(userHandle)) { - activity.startActivityForResultAsUser(intent, 0, userHandle); + activity.startActivityAsUser(intent, userHandle); return; } final List resolvableUsers = getResolvableUsers(intent, tile); if (resolvableUsers.size() == 1) { - activity.startActivityForResultAsUser(intent, 0, resolvableUsers.get(0)); + activity.startActivityAsUser(intent, resolvableUsers.get(0)); return; } diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java index 6ef6b18ec68..5d6fdf98f1b 100644 --- a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java +++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java @@ -239,7 +239,7 @@ public class DashboardFeatureProviderImplTest { any(Intent.class), eq(MetricsEvent.SETTINGS_GESTURES)); verify(mActivity) - .startActivityForResultAsUser(any(Intent.class), anyInt(), any(UserHandle.class)); + .startActivityAsUser(any(Intent.class), any(UserHandle.class)); } @Test @@ -257,7 +257,7 @@ public class DashboardFeatureProviderImplTest { any(Intent.class), anyInt()); verify(mActivity) - .startActivityForResultAsUser(any(Intent.class), anyInt(), any(UserHandle.class)); + .startActivityAsUser(any(Intent.class), any(UserHandle.class)); } @Test @@ -568,7 +568,7 @@ public class DashboardFeatureProviderImplTest { mImpl.openTileIntent(mActivity, tile); verify(mActivity, never()) - .startActivityForResult(any(Intent.class), eq(0)); + .startActivity(any(Intent.class)); verify(mActivity).getSupportFragmentManager(); } @@ -585,7 +585,7 @@ public class DashboardFeatureProviderImplTest { mImpl.openTileIntent(mActivity, tile); verify(mActivity, never()) - .startActivityForResult(any(Intent.class), eq(0)); + .startActivity(any(Intent.class)); verify(mActivity).getSupportFragmentManager(); } @@ -602,7 +602,7 @@ public class DashboardFeatureProviderImplTest { mImpl.openTileIntent(mActivity, tile); verify(mActivity) - .startActivityForResult(any(Intent.class), eq(0)); + .startActivity(any(Intent.class)); verify(mActivity, never()).getSupportFragmentManager(); } @@ -623,7 +623,7 @@ public class DashboardFeatureProviderImplTest { final ArgumentCaptor argument = ArgumentCaptor.forClass(UserHandle.class); verify(mActivity) - .startActivityForResultAsUser(any(Intent.class), anyInt(), argument.capture()); + .startActivityAsUser(any(Intent.class), argument.capture()); assertThat(argument.getValue().getIdentifier()).isEqualTo(userId); verify(mActivity, never()).getSupportFragmentManager(); } @@ -642,7 +642,7 @@ public class DashboardFeatureProviderImplTest { mImpl.openTileIntent(mActivity, tile); verify(mActivity, never()) - .startActivityForResultAsUser(any(Intent.class), anyInt(), any(UserHandle.class)); + .startActivityAsUser(any(Intent.class), any(UserHandle.class)); verify(mActivity).getSupportFragmentManager(); } @@ -665,7 +665,7 @@ public class DashboardFeatureProviderImplTest { final ArgumentCaptor argument = ArgumentCaptor.forClass(UserHandle.class); verify(mActivity) - .startActivityForResultAsUser(any(Intent.class), anyInt(), argument.capture()); + .startActivityAsUser(any(Intent.class), argument.capture()); assertThat(argument.getValue().getIdentifier()).isEqualTo(0); verify(mActivity, never()).getSupportFragmentManager(); }