diff options
| author | 2015-10-29 01:33:09 +0000 | |
|---|---|---|
| committer | 2015-10-29 01:33:09 +0000 | |
| commit | a1b8d77ca3ea6cc5e851dce8701785524e3049eb (patch) | |
| tree | 1bbb5b2888ee9d05634afb01f54a17c5a950d849 | |
| parent | d592a5a43ac9fa922c8747f2ff6e65cb27ff0b75 (diff) | |
| parent | 08d013d3a1e6306533c2fae1a4581986ffc9a642 (diff) | |
Merge "Make SYSTEM_ALERT_WINDOW development permission" into mnc-dr-dev am: 2658cb002a am: 35151fbc8b
am: 08d013d3a1
* commit '08d013d3a1e6306533c2fae1a4581986ffc9a642':
Make SYSTEM_ALERT_WINDOW development permission
| -rw-r--r-- | core/res/AndroidManifest.xml | 2 | ||||
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 18 |
2 files changed, 11 insertions, 9 deletions
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 1f6b6d382d64..09cceb6360e5 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -1469,7 +1469,7 @@ <permission android:name="android.permission.SYSTEM_ALERT_WINDOW" android:label="@string/permlab_systemAlertWindow" android:description="@string/permdesc_systemAlertWindow" - android:protectionLevel="signature|preinstalled|appop|pre23" /> + android:protectionLevel="signature|preinstalled|appop|pre23|development" /> <!-- ================================== --> <!-- Permissions affecting the system wallpaper --> diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index f95ccea3dd7a..7bca8670e1a1 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -1714,13 +1714,14 @@ public class PackageManagerService extends IPackageManager.Stub { return; } - PermissionsState permissionsState = sb.getPermissionsState(); - - for (String permission : pkg.requestedPermissions) { - BasePermission bp = mSettings.mPermissions.get(permission); - if (bp != null && bp.isRuntime() && (grantedPermissions == null - || ArrayUtils.contains(grantedPermissions, permission))) { - permissionsState.grantRuntimePermission(bp, userId); + synchronized (mPackages) { + for (String permission : pkg.requestedPermissions) { + BasePermission bp = mSettings.mPermissions.get(permission); + if (bp != null && (bp.isRuntime() || bp.isDevelopment()) + && (grantedPermissions == null + || ArrayUtils.contains(grantedPermissions, permission))) { + grantRuntimePermission(pkg.packageName, permission, userId); + } } } } @@ -3522,7 +3523,8 @@ public class PackageManagerService extends IPackageManager.Stub { killUid(appId, userId, KILL_APP_REASON_GIDS_CHANGED); } }); - } break; + } + break; } mOnPermissionChangeListeners.onPermissionsChanged(uid); |