兼容性框架变更 (Android 15)

图 1. 开发者选项中的“应用兼容性变更”屏幕列出了可切换的变更。

本页介绍 Android 15 (API level 35) 兼容性框架中可切换的变更。在您准备支持和以 Android 15 为目标平台时,请结合使用此列表与开发者选项和 ADB 命令来测试和调试您的应用。

以下是您可以使用兼容性框架工具执行的一些操作

  • 无需实际更改应用的 targetSdkVersion 即可测试目标变更。您可以使用切换开关强制启用特定的目标行为变更,以评估其对现有应用的影响。
  • 将测试重点放在特定变更上。切换开关允许您禁用所有目标变更,只保留您想要测试的变更,而不是一次性处理所有目标变更。
  • 通过 adb 管理切换开关。您可以使用 adb 命令在自动化测试环境中启用和禁用可切换的变更。
  • 使用标准变更 ID 更快地调试。每个可切换的变更都有一个唯一的 ID 和名称,您可以使用它们在日志输出中快速调试根本原因。

有关针对每个用例使用工具的完整详细信息,请参阅兼容性框架工具

兼容性框架中包含的行为变更

本节中的列表描述了 Android 15 相关变更和有助于一般应用测试的兼容性框架中包含的可切换变更。

您可以按其默认状态过滤变更列表。

Android 15 兼容性框架中的可切换变更

CAMERA_MIC_INDICATORS_NOT_PRESENT

变更 ID: 162547999
默认状态:为所有应用禁用。

指示此设备是否支持摄像头和麦克风指示器。如果存在,则值为 false,因为如果 Change ID 不存在,CompatChanges#isChangeEnabled 方法返回 true

CHECK_PARAMS_IN_IS_SESSION_CONFIGURATION_SUPPORTED

变更 ID: 320741775
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,如果 HAL 支持会话参数,则 isSessionConfigurationSupported 也会检查会话参数的兼容性。

DEFAULT_RESCIND_BAL_PRIVILEGES_FROM_PENDING_INTENT_CREATOR

变更 ID: 296478951
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,PendingIntent 的创建者会默认阻止后台 activity 启动

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关受保护的后台 activity 启动的部分。

DEPRECATE_UI_FONT

变更 ID: 279646685
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,当您的应用在 Android 15 或更高版本的设备上运行时,elegantTextHeight TextView 属性默认为 true,用更易读的字体替换了某些具有大垂直度量的脚本默认使用的紧凑字体。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关 elegantTextHeight 属性默认为 true 的部分。

DOWNSCALED

变更 ID: 168419799
默认状态:为所有应用禁用。

此变更是所有每应用缓冲区缩减变更的看门人。启用此变更允许应用以下缩放因子

当此变更针对某个应用包启用时,该应用会强制调整大小到最高启用的缩放因子。例如,如果同时启用了 80% 和 70%(DOWNSCALE_80DOWNSCALE_70),则使用 80%。当此变更和 DOWNSCALED_INVERSE 都启用时,DOWNSCALED_INVERSE 优先,并且缩放因子反向应用。

DOWNSCALED_INVERSE

变更 ID: 273564678
默认状态:为所有应用禁用。

此变更是所有每应用缓冲区反向缩减变更的看门人。启用此变更允许以下缩放因子反向应用(即,分辨率被放大)

当此变更针对某个应用包启用时,该应用会强制调整大小到最低启用的缩放因子。例如,如果同时启用了 80% 和 70%(DOWNSCALE_80DOWNSCALE_70),则使用 80%,因为反向应用时,80% 的缩放因子等于 125%,这小于反向应用 70% 缩放因子时应用的 142.86% 缩放。当此变更和 DOWNSCALED 都启用时,DOWNSCALED_INVERSE 优先,并且缩放因子反向应用。

DOWNSCALE_30

变更 ID: 189970040
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 30% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 333.33% 的显示屏上。

DOWNSCALE_35

变更 ID: 189969749
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 35% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 285.71% 的显示屏上。

DOWNSCALE_40

变更 ID: 189970038
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 40% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 250% 的显示屏上。

DOWNSCALE_45

变更 ID: 189969782
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 45% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 222.22% 的显示屏上。

DOWNSCALE_50

变更 ID: 176926741
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 50% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 200% 的显示屏上。

DOWNSCALE_55

变更 ID: 189970036
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 55% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 181.82% 的显示屏上。

DOWNSCALE_60

变更 ID: 176926771
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 60% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 166.67% 的显示屏上。

DOWNSCALE_65

变更 ID: 189969744
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 65% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 153.85% 的显示屏上。

DOWNSCALE_70

变更 ID: 176926829
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 70% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 142.86% 的显示屏上。

DOWNSCALE_75

变更 ID: 189969779
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 75% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 133.33% 的显示屏上。

DOWNSCALE_80

变更 ID: 176926753
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 80% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 125% 的显示屏上。

DOWNSCALE_85

变更 ID: 189969734
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 85% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 117.65% 的显示屏上。

DOWNSCALE_90

变更 ID: 182811243
默认状态:为所有应用禁用。

如果 DOWNSCALED 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 90% 的显示屏上。如果 DOWNSCALED_INVERSE 也已启用,则为某个包启用此变更会强制应用假定其运行在真实显示屏垂直和水平分辨率的 111.11% 的显示屏上。

DO_NOT_CLONE_IN_ARRAYS_AS_LIST

变更 ID: 202956589
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,当使用 Arrays.asList(...).toArray() 时,结果数组的组件类型现在是 Object——而不是底层数组元素的类型。因此以下代码会抛出 ClassCastException

String[] elements = (String[]) Arrays.asList("one", "two").toArray();

对于这种情况,为了在结果数组中保留 String 作为组件类型,您可以改用 Collection.toArray(Object[])

String[] elements = Arrays.asList("two", "one").toArray(new String[0]);

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关 OpenJDK API 变更的部分。

ENABLE_BUNDLE_LAUNCH_ACTIVITY_ITEM

变更 ID: 324203798
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,为防止任何现有应用与 ClientTransaction#getActivityToken() 的非 SDK 用法存在应用兼容性问题,仅允许捆绑 LaunchActivityItem

ENABLE_MATCH_LOCAL_NETWORK

变更 ID: 319212206
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,应用默认从本地网络接收网络回调。以 Android 14 (API level 34) 或更低版本为目标的应用仍需将 NetworkCapabilities.NET_CAPABILITY_LOCAL_NETWORK 添加到 NetworkRequestNetworkCapabilities 中,才能从本地网络接收 ConnectivityManager.NetworkCallback

ENABLE_STRICT_FORMATTER_VALIDATION

变更 ID: 270674727
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,当使用 String.format()Formatter.format() API 时,参数索引、标志、宽度和精度的验证现在更加严格。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关 OpenJDK API 变更的部分。

ENFORCE_EDGE_TO_EDGE

变更 ID: 309578419
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,应用将在运行 Android 15 或更高版本的设备上默认采用全屏模式。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关全屏模式强制执行的部分。

ENFORCE_STRICT_QUERY_BUILDER

变更 ID: 143231523
默认状态:为所有应用禁用。

启用后,SQLiteQueryBuilder 会针对恶意参数验证所有 CalendarProvider2 查询选择。

FGS_BOOT_COMPLETED_RESTRICTIONS

变更 ID: 296558535
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,禁用所有类型前台服务的后台启动,但以下类型除外:

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关BOOT_COMPLETED 广播接收器启动前台服务的限制的部分。

FGS_INTRODUCE_TIME_LIMITS

变更 ID: 317799821
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,某些类型的前台服务将有时间限制。如果违规类型的前台服务未在分配的时间限制内停止,它将通过 Service.onTimeout(int, int) 接收回调,并且必须在几秒钟内停止。如果应用未能做到这一点,它将被声明为 ANR。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关数据同步媒体处理前台服务类型超时行为的部分。

FGS_SAW_RESTRICTIONS

变更 ID: 319471980
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,将禁用所有类型前台服务在系统警报窗口中的后台启动,除非它已经有一个系统叠加窗口。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关应用持有 SYSTEM_ALERT_WINDOW 权限时启动前台服务的限制的部分。

FORCE_DISABLE_HEVC_SUPPORT

变更 ID: 174227820
默认状态:为所有应用禁用。

强制禁用应用支持 HEVC 媒体功能。应用应在其清单中声明其支持的媒体功能,但此标志可用于强制应用不支持 HEVC,从而在访问 HEVC 编码的媒体时强制进行转码。设置此标志会覆盖应用的任何 OS 级别默认设置。默认情况下它是禁用的,这意味着 OS 默认设置优先。如果同时启用此标志和 FORCE_ENABLE_HEVC_SUPPORT,则 OS 会忽略这两个标志。

FORCE_ENABLE_HEVC_SUPPORT

变更 ID: 174228127
默认状态:为所有应用禁用。

强制启用应用支持 HEVC 媒体功能。应用应在其清单中声明其支持的媒体功能,但此标志可用于强制应用支持 HEVC,从而在访问 HEVC 编码的媒体时避免转码。设置此标志会覆盖应用的任何 OS 级别默认设置。默认情况下它是禁用的,这意味着 OS 默认设置将优先。如果同时启用此标志和 FORCE_DISABLE_HEVC_SUPPORT,则 OS 会忽略这两个标志。

FORCE_NON_RESIZE_APP

变更 ID: 181146395
默认状态:为所有应用禁用。

强制其应用的包不可调整大小。

FORCE_RESIZE_APP

变更 ID: 174042936
默认状态:为所有应用禁用。

强制其应用的包可调整大小。我们只允许在全屏窗口模式下调整大小,但不强制应用进入可调整大小的多窗口模式。

GWP_ASAN

变更 ID: 145634846
默认状态:为所有应用禁用。

启用应用中采样本机内存错误检测。

要了解如何使用 GWP-ASan,请参阅 GWP-ASan 指南

IS_DEVICE_OWNER_USER_AWARE

变更 ID: 307233716
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,isDeviceOwnerApp(String) 方法将使用上下文中包含的用户。对于以 Android 14 (API level 34) 或更低版本为目标的应用,将使用调用进程的用户 (Process.myUserHandle())。

MANAGE_GLOBAL_ZEN_VIA_IMPLICIT_RULES

变更 ID: 308670109
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,应用将无法再更改设备上勿扰模式 (DND) 的全局状态或策略(无论是通过修改用户设置还是关闭 DND 模式)。相反,应用必须贡献一个 AutomaticZenRule,系统会将其与现有的最严格策略优先方案组合成一个全局策略。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关应用何时可以修改勿扰模式全局状态的变更的部分。

NATIVE_HEAP_ZERO_INIT

变更 ID: 178038272
默认状态:为所有应用禁用。

启用本机堆内存分配的自动零初始化。

NATIVE_MEMTAG_ASYNC

变更 ID: 145772972
默认状态:为所有应用禁用。

在此进程中启用异步 (ASYNC) 内存标记检查。此标志仅影响支持 ARM 内存标记扩展 (MTE) 的硬件。

NATIVE_MEMTAG_SYNC

变更 ID: 177438394
默认状态:为所有应用禁用。

在此进程中启用同步 (SYNC) 内存标记检查。此标志仅影响支持 ARM 内存标记扩展 (MTE) 的硬件。如果同时启用 NATIVE_MEMTAG_ASYNC 和此选项,则此选项优先,并且 MTE 在 SYNC 模式下启用。

OVERRIDE_ANY_ORIENTATION

变更 ID: 265464455
默认状态:为所有应用禁用。

启用后,此变更允许应用以下方向覆盖,无论 activity 请求的方向如何

OVERRIDE_ANY_ORIENTATION_TO_USER

变更 ID: 310816437
默认状态:为所有应用禁用。

启用后,启用 SCREEN_ORIENTATION_USER,这将覆盖 activity 请求的任何方向。固定方向的应用可以通过此覆盖在启用 ignoreOrientationRequest 的大屏幕设备上被强制为全屏。

OVERRIDE_CAMERA_COMPAT_DISABLE_FREEFORM_WINDOWING_TREATMENT

变更 ID: 314961188
默认状态:为所有应用禁用。

启用后,将应用于覆盖的包从自由形式窗口模式下固定方向应用的相机兼容性处理中排除。

在自由形式窗口模式下,兼容性处理通过将应用窗口黑边处理并更改相机特性以符合应用通常在纵向设备中的期望来模拟在纵向设备上运行:后置和前置相机分别为 90 度和 270 度传感器旋转,并将显示旋转设置为 0。

使用此标志可禁用对不响应此处理的应用的兼容性处理。

OVERRIDE_CAMERA_RESIZABLE_AND_SDK_CHECK

变更 ID: 191514214
默认状态:为所有应用禁用。

启用后,此变更会强制其应用的包忽略 android:resizeableActivity 的当前值以及目标 SDK 等于或低于 Android 6.0 (API level 23) 的情况,并将 activity 视为不可调整大小。在这种情况下,相机旋转和裁剪的值仅取决于考虑到当前显示旋转所需的补偿。

OVERRIDE_CAMERA_ROTATE_AND_CROP_DEFAULTS

变更 ID: 189229956
默认状态:为所有应用禁用。

启用后,此变更会强制其应用的包覆盖默认的相机旋转和裁剪行为,并始终返回 CaptureRequest.SCALER_ROTATE_AND_CROP_NONE

OVERRIDE_DISABLE_MEDIA_PROJECTION_SINGLE_APP_OPTION

变更 ID: 316897322
默认状态:为所有应用禁用。

启用后,确保在启动 MediaProjection 会话时,用户可以选择捕获单个应用或整个屏幕,从而覆盖 MediaProjectionConfig#createConfigForDefaultDisplay 的使用。

OVERRIDE_LANDSCAPE_ORIENTATION_TO_REVERSE_LANDSCAPE

变更 ID: 266124927
默认状态:为所有应用禁用。

为应用的包启用 SCREEN_ORIENTATION_REVERSE_LANDSCAPE。除非 OVERRIDE_ANY_ORIENTATION 也已启用,否则仅当 activity 指定横向时才使用 SCREEN_ORIENTATION_REVERSE_LANDSCAPE。启用此变更可以帮助您测试应用在横向对应 Surface.ROTATION_90 的设备和对应 Surface.ROTATION_270 的设备之间的行为差异。

OVERRIDE_LAYOUT_IN_DISPLAY_CUTOUT_MODE

变更 ID: 332679525
默认状态:为所有应用禁用。

启用后,将覆盖显示屏刘海模式下的布局行为。这仅在未强制执行全屏模式时适用。

OVERRIDE_MIN_ASPECT_RATIO

变更 ID: 174042980
默认状态:为所有应用禁用。

此变更是所有强制给定最小宽高比的变更的看门人。启用此变更允许应用以下最小宽高比

当此变更针对某个应用包启用时,应用清单中给定的最小宽高比将被覆盖为最大启用的宽高比,除非应用清单值更高。

OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN

变更 ID: 218959984
默认状态:为所有应用禁用。

启用后,将覆盖纵向全屏模式下的最小宽高比限制,以便使用所有可用的屏幕空间。

OVERRIDE_MIN_ASPECT_RATIO_LARGE

变更 ID: 180326787
默认状态:为所有应用禁用。

OVERRIDE_MIN_ASPECT_RATIO 也已启用时,为某个包启用此变更会将 activity 的最小宽高比设置为由 OVERRIDE_MIN_ASPECT_RATIO_LARGE_VALUE 定义的大值。

OVERRIDE_MIN_ASPECT_RATIO_MEDIUM

变更 ID: 180326845
默认状态:为所有应用禁用。

OVERRIDE_MIN_ASPECT_RATIO 也已启用时,为某个包启用此变更会将 activity 的最小宽高比设置为由 OVERRIDE_MIN_ASPECT_RATIO_MEDIUM_VALUE 定义的中值。

OVERRIDE_MIN_ASPECT_RATIO_ONLY_FOR_CAMERA

变更 ID: 325586858
默认状态:为所有应用禁用。

启用后,将强制给定最小宽高比的处理限制为仅当应用连接到相机时才适用。

OVERRIDE_MIN_ASPECT_RATIO_PORTRAIT_ONLY

变更 ID: 203647190
默认状态:为所有应用启用。

OVERRIDE_MIN_ASPECT_RATIO 也已启用时,此变更会将任何其他强制 activity 最小宽高比为特定值(例如 OVERRIDE_MIN_ASPECT_RATIO_LARGEOVERRIDE_MIN_ASPECT_RATIO_MEDIUM)的变更限制为也具有纵向的 activity。

OVERRIDE_RESPECT_REQUESTED_ORIENTATION

变更 ID: 236283604
默认状态:为所有应用禁用。

启用后,此变更会将应用的包从设备制造商可以设置的忽略方向限制中排除。

OVERRIDE_UNDEFINED_ORIENTATION_TO_NOSENSOR

变更 ID: 265451093
默认状态:为所有应用禁用。

为应用的包启用 SCREEN_ORIENTATION_NOSENSOR。除非 OVERRIDE_ANY_ORIENTATION 也已启用,否则仅当 activity 未指定任何其他固定方向时才使用 SCREEN_ORIENTATION_NOSENSOR

OVERRIDE_UNDEFINED_ORIENTATION_TO_PORTRAIT

变更 ID: 265452344
默认状态:为所有应用禁用。

为应用的包启用 SCREEN_ORIENTATION_PORTRAIT。除非 OVERRIDE_ANY_ORIENTATION 也已启用,否则仅当 activity 未指定任何其他固定方向时才使用 SCREEN_ORIENTATION_PORTRAIT

PARSE_CONTENT_DISPOSITION_USING_RFC_6266

变更 ID: 319400769
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,允许解析符合 RFC 6266 的 Content-Disposition 标头。特别是,这允许解析可以使用不同字符编码的 filename* 值。

RATE_LIMIT_TOASTS

变更 ID: 174840628
默认状态:此变更无法切换。它仅由兼容性框架记录。

启用对 Toast.show() 调用数量的速率限制,以防止在有限时间内给用户带来过多 toast。在特定时间范围内尝试显示超出允许数量的 toast 将导致 toast 被丢弃。

STREAM_INT_DIFFERS_FROM_NEXT_INT

变更 ID: 308103782
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,Random.ints() 方法现在返回的数字序列与 Random.nextInt() 方法返回的数字序列不同。这源于 https://bugs.openjdk.org/browse/JDK-8301574 中的变更。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关 OpenJDK API 变更的部分。

USE_EXPERIMENTAL_COMPONENT_ALIAS

变更 ID: 196254758
默认状态:为所有应用禁用。

启用后,系统允许“android”包使用组件别名。

USE_NEW_ISO_LOCALE_CODES

变更 ID: 291868760
默认状态:为以 Android 15 (API level 35) 或更高版本为目标的应用启用。

启用后,希伯来语、意第绪语和印度尼西亚语的语言代码不再转换为其已废弃的形式(希伯来语:iw,意第绪语:ji,印度尼西亚语:in)。

要了解此变更的更多信息,请参阅 Android 15 行为变更页面中有关 OpenJDK API 变更的部分。