From 469f9d3253ec55efadf1eda4ab0836d245cc65f0 Mon Sep 17 00:00:00 2001 From: Song Hu Date: Mon, 1 Feb 2021 16:15:35 -0800 Subject: [PATCH] Fix sharing shortcuts not showing for Work Profile. Check package by using selected profile PackageManager. Test: test on local device Bug: 175240616 Fixes: 179798044 Change-Id: I30728705dbc60d0506b7d20a16bcc8f1eed9b6d0 (cherry picked from commit 0e4b75a21539a5cccca0502cbc54d2dd5d401ee4) --- core/java/com/android/internal/app/ChooserActivity.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/java/com/android/internal/app/ChooserActivity.java b/core/java/com/android/internal/app/ChooserActivity.java index a6bf3cf9b8066..eeceafae531d5 100644 --- a/core/java/com/android/internal/app/ChooserActivity.java +++ b/core/java/com/android/internal/app/ChooserActivity.java @@ -2120,10 +2120,10 @@ public class ChooserActivity extends ResolverActivity implements + " resultList.size()=" + resultList.size() + " appTargets.size()=" + appTargets.size()); } - + Context selectedProfileContext = createContextAsUser(userHandle, 0 /* flags */); for (int i = resultList.size() - 1; i >= 0; i--) { final String packageName = resultList.get(i).getTargetComponent().getPackageName(); - if (!isPackageEnabled(packageName)) { + if (!isPackageEnabled(selectedProfileContext, packageName)) { resultList.remove(i); if (appTargets != null) { appTargets.remove(i); @@ -2175,13 +2175,13 @@ public class ChooserActivity extends ResolverActivity implements mChooserHandler.sendMessage(msg); } - private boolean isPackageEnabled(String packageName) { + private boolean isPackageEnabled(Context context, String packageName) { if (TextUtils.isEmpty(packageName)) { return false; } ApplicationInfo appInfo; try { - appInfo = getPackageManager().getApplicationInfo(packageName, 0); + appInfo = context.getPackageManager().getApplicationInfo(packageName, 0); } catch (NameNotFoundException e) { return false; }