diff options
-rw-r--r-- | core/java/android/content/pm/PermissionInfo.java | 7 | ||||
-rw-r--r-- | core/res/AndroidManifest.xml | 13 | ||||
-rw-r--r-- | core/res/res/values/attrs_manifest.xml | 2 | ||||
-rw-r--r-- | services/core/java/com/android/server/pm/Settings.java | 6 |
4 files changed, 19 insertions, 9 deletions
diff --git a/core/java/android/content/pm/PermissionInfo.java b/core/java/android/content/pm/PermissionInfo.java index d514513..9da2ba9 100644 --- a/core/java/android/content/pm/PermissionInfo.java +++ b/core/java/android/content/pm/PermissionInfo.java @@ -145,6 +145,13 @@ public class PermissionInfo extends PackageItemInfo implements Parcelable { public static final int FLAG_COSTS_MONEY = 1<<0; /** + * Flag for {@link #flags}, corresponding to <code>hidden</code> + * value of {@link android.R.attr#permissionFlags}. + * @hide + */ + public static final int FLAG_HIDDEN = 1<<1; + + /** * Flag for {@link #flags}, indicating that this permission has been * installed into the system's globally defined permissions. */ diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 425f39f..53b553e8 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -599,7 +599,6 @@ --> <permission android:name="android.permission.ACCESS_IMS_CALL_SERVICE" android:permissionGroup="android.permission-group.PHONE" - android:permissionFlags="hide" android:label="@string/permlab_accessImsCallService" android:description="@string/permdesc_accessImsCallService" android:protectionLevel="signature|system" /> @@ -760,32 +759,32 @@ <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.READ_PROFILE" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.WRITE_PROFILE" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.READ_SOCIAL_STREAM" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.WRITE_SOCIAL_STREAM" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.READ_USER_DICTIONARY" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- @hide We need to keep this around for backwards compatibility --> <permission android:name="android.permission.WRITE_USER_DICTIONARY" android:protectionLevel="normal" - android:permissionFlags="hide"/> + android:permissionFlags="hidden"/> <!-- ====================================================================== --> <!-- INSTALL PERMISSIONS --> diff --git a/core/res/res/values/attrs_manifest.xml b/core/res/res/values/attrs_manifest.xml index de16f20..1a45b3a 100644 --- a/core/res/res/values/attrs_manifest.xml +++ b/core/res/res/values/attrs_manifest.xml @@ -250,7 +250,7 @@ <flag name="costsMoney" value="0x0001" /> <!-- Additional flag from base permission type: this permission is hidden and should not show in the UI. --> - <flag name="hide" value="0x2" /> + <flag name="hidden" value="0x2" /> </attr> <!-- Specified the name of a group that this permission is associated diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java index 82ffa47..00d0fe1 100644 --- a/services/core/java/com/android/server/pm/Settings.java +++ b/services/core/java/com/android/server/pm/Settings.java @@ -4150,6 +4150,9 @@ final class Settings { if ((perm.info.flags&PermissionInfo.FLAG_COSTS_MONEY) != 0) { pw.print(", COSTS_MONEY"); } + if ((perm.info.flags&PermissionInfo.FLAG_HIDDEN) != 0) { + pw.print(", COSTS_HIDDEN"); + } if ((perm.info.flags&PermissionInfo.FLAG_INSTALLED) != 0) { pw.print(", INSTALLED"); } @@ -4306,7 +4309,8 @@ final class Settings { pw.println(PermissionInfo.protectionToString(p.protectionLevel)); if (p.perm != null) { pw.print(" perm="); pw.println(p.perm); - if (p.perm.info.flags != PermissionInfo.FLAG_INSTALLED) { + if ((p.perm.info.flags & PermissionInfo.FLAG_INSTALLED) == 0 + || (p.perm.info.flags & PermissionInfo.FLAG_HIDDEN) != 0) { pw.print(" flags=0x"); pw.println(Integer.toHexString(p.perm.info.flags)); } } |