Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >为 Android 应用打造精良的 Chrome OS 使用体验

为 Android 应用打造精良的 Chrome OS 使用体验

作者头像
Android 开发者
发布于 2024-02-27 01:14:12
发布于 2024-02-27 01:14:12
52400
代码可运行
举报
文章被收录于专栏:Android 开发者Android 开发者
运行总次数:0
代码可运行

作者 / Chrome OS 团队

从发布我们的首款平板电脑和可拆分式笔记本,到在日本和德国等新市场推出 Chromebook,我们一直在努力使 Chrome OS 设备的生态系统满足如今应用用户们的需求。随着人们越来越多地在大屏幕设备或者多型态设备上使用应用,开发者们的作品也得以吸引大量全新的用户。

Android 支持各种各样的大屏幕设备,包括平板电脑、可折叠设备、Chrome OS 笔记本等等。由于 Chromebook 在容器内运行完整版 Android 框架,所以绝大多数 Android 应用都可以在 Chrome OS 上运行。这意味着开发者可以使用他们既有的 Android APK,并将其扩展后适配 Chrome OS 设备,从而在更大屏幕的设备上带来更加沉浸且引人入胜的体验。

用户在 Chrome OS 中使用 Android 应用的时长在去年增长了 4 倍 ¹ 。在 2018 年第四季度,美国销售的笔记本电脑中有 21% 是 Chromebook,同比增长 23% ²。

¹ Google Internal Data, March 2018 to March 2019.

² The NPD Group, Inc., Retail Tracking Service, U.S., Notebook Computers, Chrome OS, based on units, Oct. 8, 2017- Jan. 6, 2018 vs. Oct. 7, 2018- Jan. 5, 2019.

在 Chrome OS 上提供精良的体验只需对现有应用做出少量的调整,但这些调整能带来非常巨大的改观。在针对大屏幕设备优化应用之后,Gameloft 的 Asphalt 8: Airborne 的每日用户量增加了 6 倍,Chrome OS 设备带来的收入则增加 9 倍;TopHatch 在 Chromebook 上的付费转化率增加了 100%,消费者在 Pixelbook 上的 Concepts 应用中投入的时间则增加了 20 倍。

△ Asphalt 8: Airborne

△ Concepts 在今年的 I/O 开发者大会上我们有一场专门的演讲,为大家介绍如何让应用在各种外形和尺寸的设备上都能拥有良好的视觉和性能表现。这里我们整理了 (以及新增了一些) 适配时的重点供 Android 开发者们参考。

针对 Chrome OS 优化应用体验

用户使用应用的方式完全取决于其使用的设备。您应该考虑以下几个要素,以确保您的应用能够提供最佳用户体验:

键盘输入

如果您的应用尚不支持键盘,只需添加如下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
override fun onKeyUp(code: Int, ev: KeyEvent?): Boolean {
    return when (code) {
        KeyEvent.KEYCODE_J -> {
            // Do something here
            true
        }
        else -> super.onKeyUp(code, ev) // 重要!!
    }
}

注意我们标出 "重要" 的那一行代码。这行代码会将没有被开发者处理的键值交回给父类逻辑处理,而不是忽视它们。

刷新键

Chrome OS 键盘上有独有的刷新键,而且有自己的键值 (KEYCODE_REFRESH),因此请确保您的应用可以处理 KEYCODE_REFRESH 事件。如果您已经在使用 SwipeRefreshLayout,Chrome OS 可以确保布局能响应刷新按钮事件。

触控板

当有人在带触摸板的桌面设备上使用您的应用时,他们会希望使用双指轻扫触摸板进行滚动;但在移动设备上,用户通常会按住并拖动屏幕来实现滚动。Chrome OS 会自动解析这些不同类型的动作事件,例如,当用户在使用绘图应用时如果做出了滚动的操作,绘图应用不会让画笔在画面上涂抹。

对于需要更高级触摸事件处理的应用,可以在 event.getButtonState()== 0 时忽略 MotionEvents 来检查按键状态,并忽略掉不需要的事件 (参考上面的绘图应用例子)。

NDK

Chrome OS 上游戏和应用会自动获得 ARM - x86 指令翻译。但如果您希望获得更佳的性能,那支持 x86 就至关重要。大多数高端 Chrome OS 设备都搭载了 64 位 x86 芯片 (更多这样的设备也即将到来)。如果您想在所有设备上都提供最佳性能,那请确保您的构建支持 ARM、ARM64、x86 和 x86_64 (如果您有对应的原生代码的话)。

好消息是,Android Studio 能让这种多平台支持变得简单: 只需使用 Android App Bundle 即可,它会将所有的构建打包,然后通过 Play Store 只发送用户设备所需要的那一部分,从而将下载文件体积保持在最低限度。

界面布局

如果一个应用的界面布局没有专门适配过大屏幕,那当它运行在大屏幕上时效果会非常尴尬——大量被浪费的空间,和非常不顺手的导航,这些都会让用户感到困惑。为了确保您的应用在多种布局中都能拥有良好的完成度,您可以让同一个界面拥有多个布局文件 (如下图)。

△ 同一个界面针对不同屏幕的布局文件

导航模式

同时,您的应用在不同的屏幕尺寸上都应该易于使用。提供纵向、横向等布局,使得应用可以根据可用的屏幕宽度,在底部导航、侧边导航和侧边扩展导航模式之间切换。

电子邮件应用 Reply 就针对多种屏幕重新设计了其功能和布局。Adobe Acrobat 在适配 Chrome OS 的时候,也同样考虑了不同设备的布局区别。

△ Reply 在屏幕尺寸不同时会采用不同的导航模式

多屏幕

当用户使用多个显示器时,两个屏幕之间通常会存在像素密度差异。您可以通过在界面里监听 onConfigurationChanged 来得知像素密度 (density) 的变化,从而对界面做出调整。

使用 Chromebook 进行开发

在 I/O 上我们还发布了很多新内容,将 Chrome OS 打造成为 Web 和 Android 开发者更快捷、更简单、更安全的开发环境,具体包括:

一键安装 Android Studio

只需下载、单击和安装,不再需要使用 terminal。

△ 一键安装 Android Studio

通过 USB 连接使用 ADB 调试

不再需要开发者模式,只需使用 USB 连接手机即可进行调试。

Lint 检查

高亮显示锁定的或不友好的屏幕方向、不可调整大小的界面、不正确的硬件要求以及其他不适合 Chrome OS 的功能。

Linux 中的音频播放

Chrome OS 容器支持 Linux 的所有音频工具,例如 Audacity。

虚拟桌面

这是 M76 (也是我们目前的稳定渠道) 中的一个功能,当您的屏幕被很多窗口塞满时,可以新开一个虚拟桌面。

多显示器 / 全 HDCP 支持

在外部显示器上投屏观看受 DRM 保护的视频内容 *。

  • 使用此功能时请调用 SurfaceView.setSecure()

ARCore

ARCore 可用于适配背部摄像头的应用。

免安装应用

试用应用或游戏,无需安装。

外部存储

Android 应用现在可以访问连接至设备的外部存储。

Play files

Chrome OS 文件管理器在 Play files 文件夹里可以显示 Android 的 /sdcard 文件夹,从而让用户可以通过 Chrome 容器读写 Android 文件。

DocumentsProvider

Chrome OS 现在支持 Android DocumentsProvider 接口,可以通过 DocumentsProvider 和自定义文档提供程序支持 Android Cloud 云存储

集成应用分析工具

集成分析工具允许开发者随时检测系统状态: 包括缓冲区使用、垂直同步、CPU 使用、GPU 和 CPU 频率以及系统温度,从而便于开发者定位动画卡顿和/或系统速度降低的原因。

体验应用的场景已经远远超出了移动设备。在设备形式更加多样化的今天,用户每次打开应用时都希望获得精心设计的界面和友好的交互体验。请您充分利用我们给出的新特性,支持各种输入方式,针对各种屏幕尺寸优化布局和导航,并尽可能通过原生代码支持 x86,从而为用户打造精良迅捷的使用体验。

您的 Android 应用有没有支持更大、更多样的屏幕尺寸、更多种类的设备?有没有为它们提供高完成度的使用体验?如果您在界面和交互适配上有任何疑问或者想法,欢迎在评论区和我们分享。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
提示大屏幕和折叠屏: 让您的 Android 游戏登上更大的舞台
让我们继续《让您的应用适配更多屏幕》中的话题,不过今天会更专注于游戏的范畴。在不久前的 GDC 上,我们很高兴能和大家分享多样化的设备为游戏体验带来的可能性。这些年我们亲历了诸多移动硬件的演进,如 3D 显示器和高分辨率屏幕等,也因为这些演进,让我们在应用商店中看到越来越多新颖的游戏出现,让玩家们在更沉浸的画面和游戏体验中流连忘返。
Android 开发者
2019/05/21
1.7K0
提示大屏幕和折叠屏: 让您的 Android 游戏登上更大的舞台
Android 与 Chrome OS 中针对大屏幕设备的更新
随着智能终端硬件的不断革新,大尺寸设备的种类越来越丰富,比如手机、折叠屏设备、平板电脑、ChromeBook、外接显示器的 ChromeBox 和集成屏幕的 Chromebase 等。Google 团队正在将更多研发精力投入到 Android 框架、Jetpack 和 Chrome 操作系统中。
Android 开发者
2022/03/25
2.8K0
Android 与 Chrome OS 中针对大屏幕设备的更新
FAQ | 为大屏幕设备构建应用的常见问题解答
我们在后台和社区等各渠道收到了很多来自开发者们的反馈,也把一些开发者们常见的问题进行了简单的收集和梳理,整理成这一篇关于为折叠屏和大屏幕设备构建应用的常见问题和解答,如果您在构建过程中有任何其他的问题,欢迎通过留言的方式让我们知道。
Android 开发者
2022/03/28
4K0
FAQ | 为大屏幕设备构建应用的常见问题解答
详解 Android 12L|更好地适配大屏幕设备
目前,超过 2.5 亿台大屏幕设备搭载了 Android 系统,其中包括平板电脑、可折叠设备和 ChromeOS 设备。仅在过去的 12 个月里,就有近 1 亿台新的 Android 平板电脑被激活,同比增长 20%;而 ChromeOS 的增长率为 92%,是目前增长最快的桌面设备平台。可折叠设备正在崛起,同比增长超过 265%!总的来说,目前有超过 2.5 亿台活跃的大屏幕设备搭载了 Android 系统。在这样的势头下,我们将继续努力让 Android 成为更好的操作系统,为用户和开发者提供更优质的服务。
Android 开发者
2022/03/24
4.3K0
详解 Android 12L|更好地适配大屏幕设备
可折叠设备、平板设备和大屏设备更新一览
作者 / Oscar Wahltinez, Developer Relations Engineer, Google
Android 开发者
2022/03/09
2.4K0
可折叠设备、平板设备和大屏设备更新一览
为任意屏幕尺寸构建 Android 界面
在过去的 12 个月内,有约 1 亿台新平板设备被激活,Chrome OS 的激活量增长了 92%,是增长速度最快的桌面平台。这意味着在平板电脑、可折叠设备和 Chrome OS 设备上,有超过 2.5 亿台大屏幕设备运行着 Android 系统,而关于可折叠设备的使用数量也在不断增长,同比增长超过 250%,因此,"大屏" 正在成为 Android 设备中一个重要且增长势头最快的细分市场。这也让设备制造厂商们意识到,针对大屏做优化是让设备在高端手机细分市场中脱颖而出的机会。
Android 开发者
2022/03/25
4.9K0
为任意屏幕尺寸构建 Android 界面
[译] 为什么你的应用需要对各种尺寸屏幕做适配优化?
查看这些应用:Gameloft、Evernote、Slack、1Password 如何适配 Chrome OS 系统。
Android 开发者
2019/04/01
1.1K0
[译] 为什么你的应用需要对各种尺寸屏幕做适配优化?
折叠屏上应用设计规范,了解一下?
Android 的覆盖范围在递增,体验也在变得越来越好,现已有超过 2.5 亿台大屏设备搭载了 Android 系统,包括平板电脑、可折叠设备以及 Chrome OS 设备。如何适配不同的屏幕尺寸并保障良好的体验,一直以来都是开发者的一大难题。尤其随着可折叠设备等新兴产品的涌现,适配工作也愈发迫切。本文将重点介绍 Material Design 指南中更新的相关内容,并提供一些建议来帮助开发者按照自适应界面的原则来构建应用,从而解决在平板电脑和可折叠设备上的适配问题。
Android 开发者
2022/03/28
5.4K0
折叠屏上应用设计规范,了解一下?
无缝构建跨设备体验 | Google I/O 大会精彩回顾
在今年的 Google I/O 大会上,我们讨论了您的应用如何适配 Android 设备的 各种屏幕尺寸。如果您错过了大会直播,可通过本文了解其中最重要的内容,也可以查看 无缝构建跨设备体验 | Google I/O 大会精彩回顾 视频了解
Android 开发者
2022/03/09
2K0
是时候为各式设备适配完善的输入支持了
随着技术进步以及跨平台应用的普及,您的 Android 应用已经不再局限于在直板触屏设备运行了。更丰富的交互方式使得用户能够以更复杂的输入方式使用您的应用。所以作为开发者,是时候考虑为各种各样的设备提供强大的输入支持了。本文为您准备了关于更广泛、强大的输入支持的分享,欢迎您阅读。
Android 开发者
2022/03/28
1.4K0
是时候为各式设备适配完善的输入支持了
2021 Google 开发者大会 | 更简洁、更高效,创造更流畅的移动端用户体验
全新的设计语言 Material You 让用户界面焕然一新,为用户提供随风格变化的个性化体验,也让整个系统更鲜活、更具表现力,照顾到不同用户的不同需求,同时能适配各种尺寸的屏幕和设备。
Android 开发者
2022/03/24
1K0
2021 Google 开发者大会 | 更简洁、更高效,创造更流畅的移动端用户体验
如何安装Chrome OS系统
准备好将您的计算机变成Chrome OS设备?这篇文章就是你要找的。 Home版是CloudReady的免费版本,仅供个人个人使用。它提供与我们的付费版本相同的体验,但它不能访问我们的支持团队,并且家庭版机器无法注册到Google管理控制台。
叉叉敌
2019/05/09
2.2K0
如何安装Chrome OS系统
Android P 凹口屏支持,打造全面屏体验
智能手机发展至今,边框越做越窄,屏幕中横比越做越大。而凹口屏 (又称 "刘海屏") 更是成为各大设备厂商手中的 "神兵利器":既能让用户享受到全面屏体验,又能预留出足够空间安装感应器。目前,已经有 11 家厂商相继发布了 16 款带有 "刘海" 设计的手机,其中部分机型为 Android P Beta 设备。预计今后会有更多凹口屏设备与消费者见面。
Android 开发者
2018/08/07
1.7K0
Android P 凹口屏支持,打造全面屏体验
一起看 I/O | Android 开发工具最新更新
作者 / Juan Sebastian Oviedo, Senior Product Manager
Android 开发者
2022/09/01
10.2K0
一起看 I/O | Android 开发工具最新更新
聚焦 Android 11: 大功告成
这是 #11WeeksOfAndroid 系列的最后一篇文章。感谢您在过去的时间里和我们一起深入探索 Android 开发的关键领域。下面来和我们一起回顾这些精彩内容吧:
Android 开发者
2022/09/23
2.5K0
欢迎体验 | Android 13 开发者预览版 2
上个月,我们 发布了 Android 13 的首个开发者预览版。Android 13 围绕我们的核心主题打造,即隐私和安全、开发者生产力,以及支持平板电脑和 大屏幕设备。今天,我们为大家带来了 Android 13 开发者预览版 2,提供了更多的新功能和变更,供您在应用中尝试。您的意见会帮助我们将 Android 打造成更适合开发者和用户的平台,欢迎大家和我们分享测试反馈!
Android 开发者
2022/03/21
7540
欢迎体验 | Android 13 开发者预览版 2
在 Android 模拟器上运行 ARM 应用
随着 Android 11 开发者预览版的发布,我们同时也推出了 Android 11 系统映像。新的系统映像在执行 ARM 二进制文件方面取得了显著的性能提升。此前,依赖 ARM 库且无法构建 x86 版本应用的开发者只能使用完整的 ARM 模拟系统映像 (其速度远低于在 x86 设备上运行 x86 系统映像) 或者实体机。Android 11 系统映像能够在不影响整个系统的前提下,直接将 ARM 指令转换成 x86 指令。开发者无需搭建高负载的 ARM 环境即可执行 ARM 二进制文件并进行测试。
Android 开发者
2020/04/10
4.1K0
在 Android 模拟器上运行 ARM 应用
折叠屏开发指导系列①丨屏幕兼容性解读:如何支持不同屏幕的尺寸和像素密度
折叠屏设备从展开到折叠的切换过程中,同一个设备可能出现多种屏幕尺寸的使用状态。这让开发者在应用程序适配中面临着不小的挑战,比如说屏幕难以完美适配,导致的UI错位以及反应迟缓等体验性问题,本文将从app设计和开发过程中给出支持不同屏幕尺寸和像素密度建议指导,确保应用界面能够在各类屏幕上美观的呈现。
软件绿色联盟
2022/03/31
1.9K0
折叠屏开发指导系列①丨屏幕兼容性解读:如何支持不同屏幕的尺寸和像素密度
开启全面屏体验 | 手势导航 (一)
本文是手势导航连载的第一篇文章,在接下来的时间里,我们将会为大家带来一系列手势导航的话题,敬请关注!
Android 开发者
2019/11/22
2.8K0
开启全面屏体验 | 手势导航 (一)
《深度剖析:鸿蒙系统不同终端设备的UI自适应布局策略》
在万物互联的时代,鸿蒙系统以其独特的分布式理念和强大的技术架构,迅速在智能终端领域崭露头角。随着鸿蒙生态的不断壮大,越来越多的开发者投身其中,致力于为用户打造丰富多样的应用体验。然而,如何让应用在不同终端设备上都能呈现出完美的UI布局,成为了开发者们亟待解决的关键问题。
程序员阿伟
2025/03/22
3030
《深度剖析:鸿蒙系统不同终端设备的UI自适应布局策略》
推荐阅读
相关推荐
提示大屏幕和折叠屏: 让您的 Android 游戏登上更大的舞台
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验