From 5cc5f713f993a3e650bf611d3d617fb6725fcca7 Mon Sep 17 00:00:00 2001 From: Mehdi Alizadeh Date: Fri, 6 Sep 2019 12:17:52 -0700 Subject: [PATCH] Check for component availability before all AppPrediction logic Bug: 138595943 Test: Manual test by removing the AiAi package from device Change-Id: I9d1e5be52e8ca5fadce2d3107279fa77d488f697 --- core/java/com/android/internal/app/ChooserActivity.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java index faeecda7250c8..de77aaae1653b 100644 --- a/core/java/com/android/internal/app/ChooserActivity.java +++ b/core/java/com/android/internal/app/ChooserActivity.java @@ -493,6 +493,9 @@ public class ChooserActivity extends ResolverActivity { @Override protected void onCreate(Bundle savedInstanceState) { final long intentReceivedTime = System.currentTimeMillis(); + // This is the only place this value is being set. Effectively final. + mIsAppPredictorComponentAvailable = isAppPredictionServiceAvailable(); + mIsSuccessfullySelected = false; Intent intent = getIntent(); Parcelable targetParcelable = intent.getParcelableExtra(Intent.EXTRA_INTENT); @@ -619,9 +622,6 @@ public class ChooserActivity extends ResolverActivity { .addTaggedData(MetricsEvent.FIELD_SHARESHEET_MIMETYPE, target.getType()) .addTaggedData(MetricsEvent.FIELD_TIME_TO_APP_TARGETS, systemCost)); - // This is the only place this value is being set. Effectively final. - mIsAppPredictorComponentAvailable = isAppPredictionServiceAvailable(); - AppPredictor appPredictor = getAppPredictorForDirectShareIfEnabled(); if (appPredictor != null) { mDirectShareAppTargetCache = new HashMap<>();