diff options
author | Justin Klaassen <justinklaassen@google.com> | 2017-09-18 17:38:50 -0400 |
---|---|---|
committer | Justin Klaassen <justinklaassen@google.com> | 2017-09-18 17:38:50 -0400 |
commit | bc81c7ada5aab3806dd0b17498f5c9672c9b33c4 (patch) | |
tree | 7fdcc541a9ac9e92134f1a80cec557fee772bcf8 /android/content | |
parent | 10d07c88d69cc64f73a069163e7ea5ba2519a099 (diff) | |
download | android-28-bc81c7ada5aab3806dd0b17498f5c9672c9b33c4.tar.gz |
Import Android SDK Platform P [4344336]
/google/data/ro/projects/android/fetch_artifact \
--bid 4344336 \
--target sdk_phone_armv7-win_sdk \
sdk-repo-linux-sources-4344336.zip
AndroidVersion.ApiLevel has been modified to appear as 28
Change-Id: If482fcd4cfaf6c5e544e5574926be25a293e9a6d
Diffstat (limited to 'android/content')
-rw-r--r-- | android/content/pm/ApplicationInfo.java | 33 | ||||
-rw-r--r-- | android/content/pm/PackageParser.java | 29 | ||||
-rw-r--r-- | android/content/pm/PermissionInfo.java | 36 |
3 files changed, 63 insertions, 35 deletions
diff --git a/android/content/pm/ApplicationInfo.java b/android/content/pm/ApplicationInfo.java index 664bcbca..d73f8526 100644 --- a/android/content/pm/ApplicationInfo.java +++ b/android/content/pm/ApplicationInfo.java @@ -586,24 +586,32 @@ public class ApplicationInfo extends PackageItemInfo implements Parcelable { */ public static final int PRIVATE_FLAG_VIRTUAL_PRELOAD = 1 << 16; + /** + * Value for {@linl #privateFlags}: whether this app is pre-installed on the + * OEM partition of the system image. + * @hide + */ + public static final int PRIVATE_FLAG_OEM = 1 << 17; + /** @hide */ @IntDef(flag = true, prefix = { "PRIVATE_FLAG_" }, value = { - PRIVATE_FLAG_HIDDEN, + PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE, + PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION, + PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_UNRESIZEABLE, + PRIVATE_FLAG_BACKUP_IN_FOREGROUND, PRIVATE_FLAG_CANT_SAVE_STATE, - PRIVATE_FLAG_FORWARD_LOCK, - PRIVATE_FLAG_PRIVILEGED, - PRIVATE_FLAG_HAS_DOMAIN_URLS, PRIVATE_FLAG_DEFAULT_TO_DEVICE_PROTECTED_STORAGE, PRIVATE_FLAG_DIRECT_BOOT_AWARE, + PRIVATE_FLAG_FORWARD_LOCK, + PRIVATE_FLAG_HAS_DOMAIN_URLS, + PRIVATE_FLAG_HIDDEN, PRIVATE_FLAG_INSTANT, + PRIVATE_FLAG_ISOLATED_SPLIT_LOADING, + PRIVATE_FLAG_OEM, PRIVATE_FLAG_PARTIALLY_DIRECT_BOOT_AWARE, + PRIVATE_FLAG_PRIVILEGED, PRIVATE_FLAG_REQUIRED_FOR_SYSTEM_USER, - PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE, - PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_UNRESIZEABLE, - PRIVATE_FLAG_ACTIVITIES_RESIZE_MODE_RESIZEABLE_VIA_SDK_VERSION, - PRIVATE_FLAG_BACKUP_IN_FOREGROUND, PRIVATE_FLAG_STATIC_SHARED_LIBRARY, - PRIVATE_FLAG_ISOLATED_SPLIT_LOADING, PRIVATE_FLAG_VIRTUAL_PRELOAD, }) @Retention(RetentionPolicy.SOURCE) @@ -1557,6 +1565,13 @@ public class ApplicationInfo extends PackageItemInfo implements Parcelable { /** * @hide */ + public boolean isOem() { + return (privateFlags & ApplicationInfo.PRIVATE_FLAG_OEM) != 0; + } + + /** + * @hide + */ @Override protected ApplicationInfo getApplicationInfo() { return this; } diff --git a/android/content/pm/PackageParser.java b/android/content/pm/PackageParser.java index 8b54b0d8..6c7c8a07 100644 --- a/android/content/pm/PackageParser.java +++ b/android/content/pm/PackageParser.java @@ -96,8 +96,8 @@ import com.android.internal.util.ArrayUtils; import com.android.internal.util.XmlUtils; import libcore.io.IoUtils; - import libcore.util.EmptyArray; + import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; @@ -815,21 +815,22 @@ public class PackageParser { } } - public final static int PARSE_IS_SYSTEM = 1<<0; - public final static int PARSE_CHATTY = 1<<1; - public final static int PARSE_MUST_BE_APK = 1<<2; - public final static int PARSE_IGNORE_PROCESSES = 1<<3; - public final static int PARSE_FORWARD_LOCK = 1<<4; - public final static int PARSE_EXTERNAL_STORAGE = 1<<5; - public final static int PARSE_IS_SYSTEM_DIR = 1<<6; - public final static int PARSE_IS_PRIVILEGED = 1<<7; - public final static int PARSE_COLLECT_CERTIFICATES = 1<<8; - public final static int PARSE_TRUSTED_OVERLAY = 1<<9; - public final static int PARSE_ENFORCE_CODE = 1<<10; + public static final int PARSE_IS_SYSTEM = 1 << 0; + public static final int PARSE_CHATTY = 1 << 1; + public static final int PARSE_MUST_BE_APK = 1 << 2; + public static final int PARSE_IGNORE_PROCESSES = 1 << 3; + public static final int PARSE_FORWARD_LOCK = 1 << 4; + public static final int PARSE_EXTERNAL_STORAGE = 1 << 5; + public static final int PARSE_IS_SYSTEM_DIR = 1 << 6; + public static final int PARSE_IS_PRIVILEGED = 1 << 7; + public static final int PARSE_COLLECT_CERTIFICATES = 1 << 8; + public static final int PARSE_TRUSTED_OVERLAY = 1 << 9; + public static final int PARSE_ENFORCE_CODE = 1 << 10; /** @deprecated remove when fixing b/34761192 */ @Deprecated - public final static int PARSE_IS_EPHEMERAL = 1<<11; - public final static int PARSE_FORCE_SDK = 1<<12; + public static final int PARSE_IS_EPHEMERAL = 1 << 11; + public static final int PARSE_FORCE_SDK = 1 << 12; + public static final int PARSE_IS_OEM = 1 << 13; private static final Comparator<String> sSplitNameComparator = new SplitNameComparator(); diff --git a/android/content/pm/PermissionInfo.java b/android/content/pm/PermissionInfo.java index b84c1b93..17b4f871 100644 --- a/android/content/pm/PermissionInfo.java +++ b/android/content/pm/PermissionInfo.java @@ -17,7 +17,6 @@ package android.content.pm; import android.annotation.SystemApi; -import android.annotation.TestApi; import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; @@ -135,6 +134,16 @@ public class PermissionInfo extends PackageItemInfo implements Parcelable { public static final int PROTECTION_FLAG_RUNTIME_ONLY = 0x2000; /** + * Additional flag for {@link #protectionLevel}, corresponding + * to the <code>oem</code> value of + * {@link android.R.attr#protectionLevel}. + * + * @hide + */ + @SystemApi + public static final int PROTECTION_FLAG_OEM = 0x4000; + + /** * Mask for {@link #protectionLevel}: the basic protection type. */ public static final int PROTECTION_MASK_BASE = 0xf; @@ -222,7 +231,7 @@ public class PermissionInfo extends PackageItemInfo implements Parcelable { /** @hide */ public static String protectionToString(int level) { String protLevel = "????"; - switch (level&PROTECTION_MASK_BASE) { + switch (level & PROTECTION_MASK_BASE) { case PermissionInfo.PROTECTION_DANGEROUS: protLevel = "dangerous"; break; @@ -236,36 +245,39 @@ public class PermissionInfo extends PackageItemInfo implements Parcelable { protLevel = "signatureOrSystem"; break; } - if ((level&PermissionInfo.PROTECTION_FLAG_PRIVILEGED) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_PRIVILEGED) != 0) { protLevel += "|privileged"; } - if ((level&PermissionInfo.PROTECTION_FLAG_DEVELOPMENT) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_DEVELOPMENT) != 0) { protLevel += "|development"; } - if ((level&PermissionInfo.PROTECTION_FLAG_APPOP) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_APPOP) != 0) { protLevel += "|appop"; } - if ((level&PermissionInfo.PROTECTION_FLAG_PRE23) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_PRE23) != 0) { protLevel += "|pre23"; } - if ((level&PermissionInfo.PROTECTION_FLAG_INSTALLER) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_INSTALLER) != 0) { protLevel += "|installer"; } - if ((level&PermissionInfo.PROTECTION_FLAG_VERIFIER) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_VERIFIER) != 0) { protLevel += "|verifier"; } - if ((level&PermissionInfo.PROTECTION_FLAG_PREINSTALLED) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_PREINSTALLED) != 0) { protLevel += "|preinstalled"; } - if ((level&PermissionInfo.PROTECTION_FLAG_SETUP) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_SETUP) != 0) { protLevel += "|setup"; } - if ((level&PermissionInfo.PROTECTION_FLAG_INSTANT) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_INSTANT) != 0) { protLevel += "|instant"; } - if ((level&PermissionInfo.PROTECTION_FLAG_RUNTIME_ONLY) != 0) { + if ((level & PermissionInfo.PROTECTION_FLAG_RUNTIME_ONLY) != 0) { protLevel += "|runtime"; } + if ((level & PermissionInfo.PROTECTION_FLAG_OEM) != 0) { + protLevel += "|oem"; + } return protLevel; } |