Filter available notification assts

Test: manual
Bug: 127146476
Change-Id: I338e2154e6aced8a60b360c6f618c3f1b3afa338
This commit is contained in:
Julia Reynolds
2019-03-04 11:45:38 -05:00
parent be15baa155
commit 102264bc0b

View File

@@ -20,12 +20,15 @@ import android.app.settings.SettingsEnums;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.Context; import android.content.Context;
import android.content.pm.PackageItemInfo; import android.content.pm.PackageItemInfo;
import android.content.pm.PackageManager;
import android.content.pm.ServiceInfo; import android.content.pm.ServiceInfo;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.os.RemoteException;
import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource;
import android.provider.Settings; import android.provider.Settings;
import android.service.notification.NotificationAssistantService; import android.service.notification.NotificationAssistantService;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log;
import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R; import com.android.settings.R;
@@ -114,8 +117,12 @@ public class NotificationAssistantPicker extends DefaultAppPickerFragment implem
List<CandidateInfo> list = new ArrayList<>(); List<CandidateInfo> list = new ArrayList<>();
services.sort(new PackageItemInfo.DisplayNameComparator(mPm)); services.sort(new PackageItemInfo.DisplayNameComparator(mPm));
for (ServiceInfo service : services) { for (ServiceInfo service : services) {
final ComponentName cn = new ComponentName(service.packageName, service.name); if (mContext.getPackageManager().checkPermission(
list.add(new DefaultAppInfo(mContext, mPm, mUserId, cn)); android.Manifest.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE,
service.packageName) == PackageManager.PERMISSION_GRANTED) {
final ComponentName cn = new ComponentName(service.packageName, service.name);
list.add(new DefaultAppInfo(mContext, mPm, mUserId, cn));
}
} }
list.add(new CandidateNone(mContext)); list.add(new CandidateNone(mContext));
mCandidateInfos = list; mCandidateInfos = list;