Merge "Fix ActivityNotFoundException" into udc-qpr-dev am: ebab5f6e38

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23352276

Change-Id: I2e1f9cbb5f54b38d3f4c29ca903569e13adc71ac
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Lex Huang
2023-05-22 07:04:42 +00:00
committed by Automerger Merge Worker
2 changed files with 23 additions and 9 deletions

View File

@@ -59,7 +59,7 @@ import java.util.Optional;
* until {@link Slice} is fully loaded.
*/
public class BlockingPrefWithSliceController extends BasePreferenceController implements
LifecycleObserver, OnStart, OnStop, Observer<Slice>, BasePreferenceController.UiBlocker{
LifecycleObserver, OnStart, OnStop, Observer<Slice>, BasePreferenceController.UiBlocker {
private static final String TAG = "BlockingPrefWithSliceController";
private static final String PREFIX_KEY = "slice_preference_item_";
@@ -213,7 +213,8 @@ public class BlockingPrefWithSliceController extends BasePreferenceController im
} else {
expectedActivityIntent = intentFromSliceAction;
}
if (expectedActivityIntent != null) {
if (expectedActivityIntent != null && expectedActivityIntent.resolveActivity(
mContext.getPackageManager()) != null) {
Log.d(TAG, "setIntent: ActivityIntent" + expectedActivityIntent);
// Since UI needs to support the Settings' 2 panel feature, the intent can't use the
// FLAG_ACTIVITY_NEW_TASK. The above intent may have the FLAG_ACTIVITY_NEW_TASK
@@ -222,6 +223,7 @@ public class BlockingPrefWithSliceController extends BasePreferenceController im
preference.setIntent(expectedActivityIntent);
} else {
Log.d(TAG, "setIntent: Intent is null");
preference.setSelectable(false);
}
}