Version: 6000.3
语言: 中文
根据用户偏好进行优化
在 Android 中创建和使用插件

大屏幕和可折叠设备支持

在搭载 Android 12 或更高版本的大屏幕和可折叠设备上,您的应用可以在多窗口模式下与其他应用同时运行,而不管其默认配置如何。如果您的应用程序是针对特定方向设计的,或者纵横比图像比例尺寸的关系,例如其宽度和高度。
请参阅术语表
,或者不可调整大小,则 Android作系统会自动将其切换到兼容模式。在此模式下,Android作系统会缩放您的应用以适应可用的屏幕尺寸。但是,在某些情况下,应用程序可能未针对特定屏幕尺寸进行优化,从而导致用户体验不佳。

注意:对于搭载 Android 12 或更高版本的设备,多窗口模式是默认行为。从 Android 16 开始,对于面向 Android 16 及更新版本的应用程序,作系统为大屏幕设备引入了其他更改。如需了解详情,请参阅有关大屏幕设备的 Android 16 行为更改的文档。

为确保一致的用户体验,请考虑设计应用程序以适应各种屏幕尺寸,包括大屏幕和可折叠设备。您可以使用以下设置和 API。

可调整大小的活动播放器设置

可调整大小的活动播放器设置在您的应用中启用多窗口模式,并允许 Android作系统将其视为可调整大小。对于新项目,Unity 默认启用此设置,并将android.resizeableActivity="true"在 Android 清单文件中。在这种情况下,将忽略纵横比限制。

如果您选择将android.resizeableActivity="false",Android作系统的行为方式如下:

Android作系统版本 行为
早于 Android 12 将应用程序显示为全屏并禁用多窗口模式。
Android 12 及更高版本 默认启用多窗口模式,并激活应用程序的兼容模式,以将其调整为可用的屏幕尺寸。

注意:对于以 Android 16 为目标平台的应用,Android作系统会忽略
resizeableActivitymanifest 属性,并调整您的应用程序以适应可用的屏幕空间。如需了解详情,请参阅有关大屏幕设备的 Android 16 行为更改的文档。

在兼容模式下,应用程序可能无法按预期显示。在大屏幕和可折叠设备上的屏幕之间切换等方案中,OS 可能会提示用户重启应用程序。重新启动应用程序会导致活动和整体应用程序状态丢失。

注意:在搭载 Android 12 或更高版本的小屏幕设备上,可调整大小的应用支持基于 Activity 的最小宽度和最小高度的多窗口模式。不可调整大小的应用程序不支持小屏幕设备上的多窗口模式。

应用程序和配置 API

AndroidApplication API 在设备上运行时提供有关 Android 应用程序的信息。您可以使用此 API 执行以下作:

  • 访问当前活动的 Java 实例。
  • 在应用程序的 UI 线程或主线程上调用事件。
  • 在应用程序在设备上运行时检测和处理配置更改。

使用 AndroidApplication.onConfigurationChanged 方法,您可以检测任何设备配置更改。您可以检索设备信息,例如屏幕布局、屏幕大小和方向。该方法还检索其他配置详细信息,例如屏幕是折叠还是展开、使用的键盘类型以及用户对语言和区域的偏好。如需详细了解可以检索哪些设备属性,请参阅 AndroidConfiguration API。使用 AndroidApplication.onConfigurationChanged 方法进行必要的调整,例如重新排列用户界面,以确保您的应用程序无缝适应不同的设备配置。

Android 16 大屏幕设备的行为变化

从 Android 16 开始,面向 Android 16 或更高版本的应用需要根据各种屏幕尺寸动态调整其内容,以获得最佳用户体验。对于大屏幕设备,Android作系统将忽略清单属性中或通过 API 定义的方向、可调整大小或宽高比的任何固定设置。相反,作系统将尝试调整应用程序的内容以适应可用的屏幕空间。

有关忽略哪些属性的更多信息,请参阅 Android 文档。确保应用程序支持这些更改,以避免任何布局问题。

豁免

Android 16 行为更改不适用于以下情况:

  • 分类为游戏的应用程序
  • 在最小屏幕宽度小于 600dp 的设备上运行的应用程序
  • 在用户在设备的宽高比设置中手动选择应用程序默认行为的设备上运行的应用程序

为了为您的游戏应用程序启用豁免,Unity 提供了应用程序类别播放器设置。此设置将取代不再受支持的 androidIsGame API。

应用类别播放器设置

通过应用类别设置,可以指定应用程序的类别,例如游戏或任何其他应用类型。对于归类为游戏的应用程序,启用此设置可确保免除 Android 16 行为更改。这意味着 Android作系统不会忽略为应用程序定义的任何固定方向、可调整大小或纵横比设置。

如果你使用的是自适应性能包游戏模式API,则必须将 应用类别(App Category) 设置为 游戏(Game)。为此,请按照下列步骤作:

  1. 打开 Android Player 设置>其他设置>配置
  2. 启用应用类别
  3. 在类别下拉列表中,选择 游戏(Game)。

完成这些步骤后,Unity 会自动将android:appCategory=game在构建过程中的应用程序清单文件中。

笔记

  • 对于新项目,默认情况下,应用类别处于启用状态,并设置为 游戏(Game)。
  • 对于将 androidIsGame 设置为 false 的现有项目,应用类别将保持禁用状态。

其他资源

根据用户偏好进行优化
在 Android 中创建和使用插件