与使用触摸屏的 Android 应用不同,许多 ChromeOS 设备是笔记本电脑或具有笔记本电脑模式。因此,当你为 ChromeOS 构建应用程序时,你必须处理来自鼠标、触摸板和键盘的输入。您可以使用 ChromeOS 输入模拟(菜单:文件 > 构建设置 > 玩家设置 > 其他设置)来决定您的应用程序如何处理 ChromeOS 设备上的用户输入。
为了模拟触摸屏输入,ChromeOS 会自动将鼠标或触摸板输入中的左点击转换成屏幕点击。因此,为手机和平板电脑开发的 Android 应用程序在 ChromeOS 设备上默认运行。
注意: 只支持左点击和键盘输入。任何其他输入都会被忽略。
默认情况下,此行为通过 ChromeOS 输入模拟 玩家设置启用。
要支持鼠标和触摸板输入,请禁用 ChromeOS 输入模拟 设置。禁用此选项后,您的应用程序将接收以下未更改的鼠标和触摸板输入:
当禁用此设置时,您还需要编写 Unity 输入代码来处理鼠标和触摸板输入。输入代码必须包含如何读取光标位置、处理鼠标和触摸板点击以及读取滚动事件的说明。有关编写输入代码的更多信息,请参阅Input 中的 API 脚本引用。
注意: Android 和 ChromeOS 支持自定义光标。要自定义光标,请参阅Cursor.SetCustomCursor。
在 Android 上,每当有输入字段或文本字段被选中时,虚拟的屏幕键盘总是会弹出,以便用户可以输入文本。在 ChromeOS 上,当可用硬件键盘时,屏幕键盘不会显示或需要。当没有可用硬件键盘时,屏幕键盘会显示。这种行为不受 ChromeOS 输入模拟 玩家设置的影响。
注意: 如果您的 Android 应用程序提示用户打开 TouchScreenKeyboard,它在 ChromeOS 上的行为相同。
要支持悬停功能,Unity 需要确切的鼠标位置。在 ChromeOS 输入模拟 模式下,无法获取确切的鼠标信息。因此,您需要禁用 ChromeOS 输入模拟 设置,以便在应用程序中支持悬停。