From 7b09ab84309bdcd343c4bb5c66ca6a427e72d1d0 Mon Sep 17 00:00:00 2001 From: Pierre-Laurent Coirier Date: Fri, 26 Feb 2016 12:07:41 -0500 Subject: [PATCH] Grant fixed SMS & Phone permission to package handling the twinning settings intent. BUG: 27343350 Change-Id: I818424e94006910dc25bab7cccb24f7979c39c9e --- .../server/pm/DefaultPermissionGrantPolicy.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java index 8abc8fcd30092..ac99c2b5c28b0 100644 --- a/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java +++ b/services/core/java/com/android/server/pm/DefaultPermissionGrantPolicy.java @@ -119,6 +119,9 @@ final class DefaultPermissionGrantPolicy { STORAGE_PERMISSIONS.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } + private static final String ACTION_TWINNING = + "com.google.android.clockwork.intent.TWINNING_SETTINGS"; + private final PackageManagerService mService; private PackagesProvider mImePackagesProvider; @@ -571,8 +574,9 @@ final class DefaultPermissionGrantPolicy { grantRuntimePermissionsLPw(musicPackage, STORAGE_PERMISSIONS, userId); } - // Android Wear Home + // Android Wear if (mService.hasSystemFeature(PackageManager.FEATURE_WATCH)) { + // Android Wear Home Intent homeIntent = new Intent(Intent.ACTION_MAIN); homeIntent.addCategory(Intent.CATEGORY_HOME_MAIN); @@ -589,6 +593,17 @@ final class DefaultPermissionGrantPolicy { grantRuntimePermissionsLPw(wearHomePackage, LOCATION_PERMISSIONS, false, userId); } + + // AT&T NumberSync + Intent twinningIntent = new Intent(ACTION_TWINNING); + PackageParser.Package twinningPackage = getDefaultSystemHandlerActivityPackageLPr( + twinningIntent, userId); + + if (twinningPackage != null + && doesPackageSupportRuntimePermissions(twinningPackage)) { + grantRuntimePermissionsLPw(twinningPackage, PHONE_PERMISSIONS, false, userId); + grantRuntimePermissionsLPw(twinningPackage, SMS_PERMISSIONS, false, userId); + } } mService.mSettings.onDefaultRuntimePermissionsGrantedLPr(userId);