diff options
| author | 2024-11-13 20:45:49 +0000 | |
|---|---|---|
| committer | 2024-11-13 20:45:49 +0000 | |
| commit | 3a74114a778c07996086ddfbb047624c1e5effc2 (patch) | |
| tree | 820548a054864602f3d09f8ee590a8881aee719d | |
| parent | edff77959efa22e21b75f613dd2f326057eaf37f (diff) | |
| parent | 4569f08c0b0ea102167111f950dbb1d3120f4b13 (diff) | |
Merge "Add xml attribute for page size appcompat" into main
| -rw-r--r-- | core/api/current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/content/pm/flags.aconfig | 10 | ||||
| -rw-r--r-- | core/res/res/values/attrs_manifest.xml | 15 | ||||
| -rw-r--r-- | core/res/res/values/public-staging.xml | 2 |
4 files changed, 27 insertions, 1 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 89850a5d864a..f1fbab001822 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -1276,6 +1276,7 @@ package android { field public static final int paddingStart = 16843699; // 0x10103b3 field public static final int paddingTop = 16842967; // 0x10100d7 field public static final int paddingVertical = 16844094; // 0x101053e + field @FlaggedApi("android.content.pm.app_compat_option_16kb") public static final int pageSizeCompat; field public static final int panelBackground = 16842846; // 0x101005e field public static final int panelColorBackground = 16842849; // 0x1010061 field public static final int panelColorForeground = 16842848; // 0x1010060 diff --git a/core/java/android/content/pm/flags.aconfig b/core/java/android/content/pm/flags.aconfig index 9ba5a352358b..e181ae8ef3c7 100644 --- a/core/java/android/content/pm/flags.aconfig +++ b/core/java/android/content/pm/flags.aconfig @@ -366,3 +366,13 @@ flag { description: "Block app installations that specify an incompatible minor SDK version" bug: "377474232" } + +flag { + name: "app_compat_option_16kb" + is_exported: true + namespace: "devoptions_settings" + description: "Feature flag to enable page size app compat mode from manifest, package manager and settings level." + bug: "371049373" + is_fixed_read_only: true +} + diff --git a/core/res/res/values/attrs_manifest.xml b/core/res/res/values/attrs_manifest.xml index 41dec3776b5c..7ef539492aa4 100644 --- a/core/res/res/values/attrs_manifest.xml +++ b/core/res/res/values/attrs_manifest.xml @@ -1855,13 +1855,23 @@ {@link android.R.styleable#AndroidManifestProcess process} tag, or to an {@link android.R.styleable#AndroidManifestApplication application} tag (to supply a default setting for all application components). --> - <attr name="memtagMode"> + <attr name="memtagMode"> <enum name="default" value="-1" /> <enum name="off" value="0" /> <enum name="async" value="1" /> <enum name="sync" value="2" /> </attr> + <!-- This attribute will be used to override app compatibility mode on 16 KB devices. + If set to enabled, Natives lib will be extracted from APK if they are not page aligned on + 16 KB device. 4 KB natives libs will be loaded app-compat mode if they are eligible. + @FlaggedApi(android.content.pm.Flags.FLAG_APP_COMPAT_OPTION_16KB) --> + <attr name="pageSizeCompat"> + <enum name="enabled" value="5" /> + <enum name="disabled" value="6" /> + </attr> + + <!-- Attribution tag to be used for permission sub-attribution if a permission is checked in {@link android.content.Context#sendBroadcast(Intent, String)}. Multiple tags can be specified separated by '|'. @@ -2212,6 +2222,9 @@ <attr name="memtagMode" /> + <!-- @FlaggedApi(android.content.pm.Flags.FLAG_APP_COMPAT_OPTION_16KB) --> + <attr name="pageSizeCompat" /> + <!-- If {@code true} enables automatic zero initialization of all native heap allocations. --> <attr name="nativeHeapZeroInitialized" format="boolean" /> diff --git a/core/res/res/values/public-staging.xml b/core/res/res/values/public-staging.xml index b6436d0b30a5..a0bf89d66923 100644 --- a/core/res/res/values/public-staging.xml +++ b/core/res/res/values/public-staging.xml @@ -131,6 +131,8 @@ <public name="alternateLauncherIcons"/> <!-- @FlaggedApi(android.content.pm.Flags.FLAG_CHANGE_LAUNCHER_BADGING) --> <public name="alternateLauncherLabels"/> + <!-- @FlaggedApi(android.content.pm.Flags.FLAG_APP_COMPAT_OPTION_16KB) --> + <public name="pageSizeCompat" /> </staging-public-group> <staging-public-group type="id" first-id="0x01b60000"> |