Loading services/companion/java/com/android/server/companion/association/AssociationRequestsProcessor.java +11 −2 Original line number Diff line number Diff line Loading @@ -214,8 +214,7 @@ public class AssociationRequestsProcessor { request.setPackageName(packageName); request.setUserId(userId); request.setSkipPrompt(mayAssociateWithoutPrompt(packageName, userId)); request.setRequestedPerms(getRequestedPermsForProfile(userId, packageName, request.getDeviceProfile())); request.setRequestedPerms(getPermsForProfile(request.getDeviceProfile())); // 2b.2. Prepare extras and create an Intent. final Bundle extras = new Bundle(); Loading Loading @@ -523,6 +522,16 @@ public class AssociationRequestsProcessor { return PackageUtils.isPackageAllowlisted(mContext, mPackageManagerInternal, packageName); } private List<Integer> getPermsForProfile(String profile) { if (profile == null || !PROFILE_PERMISSION_SETS.containsKey(profile)) { return null; } return PROFILE_PERMISSION_SETS.get(profile); } /** * Get app requested permissions for the profile. */ private ArrayList<Integer> getRequestedPermsForProfile(int userId, String packageName, String profile) { if (profile == null || !PROFILE_PERMISSION_SETS.containsKey(profile)) { Loading services/companion/java/com/android/server/companion/utils/RolesUtils.java +3 −5 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import static android.companion.CompanionResources.PERMISSION_CONTACTS; import static android.companion.CompanionResources.PERMISSION_MICROPHONE; import static android.companion.CompanionResources.PERMISSION_NEARBY_DEVICES; import static android.companion.CompanionResources.PERMISSION_NOTIFICATIONS; import static android.companion.CompanionResources.PERMISSION_NOTIFICATION_LISTENER_ACCESS; import static android.companion.CompanionResources.PERMISSION_PHONE; import static android.companion.CompanionResources.PERMISSION_SMS; import static android.companion.CompanionResources.PERMISSION_STORAGE; Loading Loading @@ -57,15 +56,14 @@ public final class RolesUtils { private static final String TAG = "CDM_RolesUtils"; // Profile to permission sets - sync with CompanionDeviceResources public static final Map<String, List<Integer>> PROFILE_PERMISSION_SETS = Map.of( DEVICE_PROFILE_COMPUTER, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_COMPUTER, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_STORAGE), DEVICE_PROFILE_WATCH, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_WATCH, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_PHONE, PERMISSION_CALL_LOGS, PERMISSION_SMS, PERMISSION_CONTACTS, PERMISSION_CALENDAR, PERMISSION_NEARBY_DEVICES, PERMISSION_CHANGE_MEDIA_OUTPUT), DEVICE_PROFILE_GLASSES, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_GLASSES, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_PHONE, PERMISSION_SMS, PERMISSION_CONTACTS, PERMISSION_MICROPHONE, PERMISSION_NEARBY_DEVICES) ); Loading Loading
services/companion/java/com/android/server/companion/association/AssociationRequestsProcessor.java +11 −2 Original line number Diff line number Diff line Loading @@ -214,8 +214,7 @@ public class AssociationRequestsProcessor { request.setPackageName(packageName); request.setUserId(userId); request.setSkipPrompt(mayAssociateWithoutPrompt(packageName, userId)); request.setRequestedPerms(getRequestedPermsForProfile(userId, packageName, request.getDeviceProfile())); request.setRequestedPerms(getPermsForProfile(request.getDeviceProfile())); // 2b.2. Prepare extras and create an Intent. final Bundle extras = new Bundle(); Loading Loading @@ -523,6 +522,16 @@ public class AssociationRequestsProcessor { return PackageUtils.isPackageAllowlisted(mContext, mPackageManagerInternal, packageName); } private List<Integer> getPermsForProfile(String profile) { if (profile == null || !PROFILE_PERMISSION_SETS.containsKey(profile)) { return null; } return PROFILE_PERMISSION_SETS.get(profile); } /** * Get app requested permissions for the profile. */ private ArrayList<Integer> getRequestedPermsForProfile(int userId, String packageName, String profile) { if (profile == null || !PROFILE_PERMISSION_SETS.containsKey(profile)) { Loading
services/companion/java/com/android/server/companion/utils/RolesUtils.java +3 −5 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import static android.companion.CompanionResources.PERMISSION_CONTACTS; import static android.companion.CompanionResources.PERMISSION_MICROPHONE; import static android.companion.CompanionResources.PERMISSION_NEARBY_DEVICES; import static android.companion.CompanionResources.PERMISSION_NOTIFICATIONS; import static android.companion.CompanionResources.PERMISSION_NOTIFICATION_LISTENER_ACCESS; import static android.companion.CompanionResources.PERMISSION_PHONE; import static android.companion.CompanionResources.PERMISSION_SMS; import static android.companion.CompanionResources.PERMISSION_STORAGE; Loading Loading @@ -57,15 +56,14 @@ public final class RolesUtils { private static final String TAG = "CDM_RolesUtils"; // Profile to permission sets - sync with CompanionDeviceResources public static final Map<String, List<Integer>> PROFILE_PERMISSION_SETS = Map.of( DEVICE_PROFILE_COMPUTER, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_COMPUTER, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_STORAGE), DEVICE_PROFILE_WATCH, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_WATCH, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_PHONE, PERMISSION_CALL_LOGS, PERMISSION_SMS, PERMISSION_CONTACTS, PERMISSION_CALENDAR, PERMISSION_NEARBY_DEVICES, PERMISSION_CHANGE_MEDIA_OUTPUT), DEVICE_PROFILE_GLASSES, Arrays.asList(PERMISSION_NOTIFICATION_LISTENER_ACCESS, DEVICE_PROFILE_GLASSES, Arrays.asList( PERMISSION_NOTIFICATIONS, PERMISSION_PHONE, PERMISSION_SMS, PERMISSION_CONTACTS, PERMISSION_MICROPHONE, PERMISSION_NEARBY_DEVICES) ); Loading