Bring Your Android App to Chromebooks

借用了原博客的标题,原博内容为Android app可以运行在Chromebook。这里主要说Android app运行在Chromebook的一下需要注意的地方。


出于Chromebook的速度、安全和简单性,Chromebook在美国销量超过了Mac,Chrome OS成为了美国第二大受欢迎的PC操作系统。开发人员集中关注Chromebook的移动性,宣布Android App可以运行在Chromebook上。

Optimize Android Apps for Chromebooks


Google I/O 2016宣布,不久后Chromebook就会支持Google Play Store和Android应用。如果你是Android开发者,你应该学习更多。

通过这5步,你可以针对Chromebook优化你的Android应用:

  • Update the Android manifest for differences in hardware and software

考虑到一些关键性的差异,你应该对Manifest.xml文件做一些调整。

默认情况下,所以的Android应用都需要触摸屏的支持。如果你想你的应用以最好的方式在所有的Chromebook上运行,你应该想下面的示例那样,在Manifest.xml中设置触摸屏为不需要,并深入研究鼠标和键盘的交互。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          ...>
    <!-- Some Chromebooks don't support touch.
         It's very important to explicitly have this. -->
    <uses-feature android:name="android.hardware.touchscreen"
                  required="false" />
</manifest>
值得注意的是,不同的设备通常会有不同的传感器。虽然手持Android设备可能会有GPS和加速计,但不能保证所有的Chromebook都会支持这些传感器。但是,Chromebook会通过其他方式提供和这些传感器相同的功能。例如,Chromebook没有GPS传感器,但它可以基于WIFI连接提供位置信息。如果你想在Chromebook上运行你的应用而不管有没有传感器支持,你应该在Manifest.xml中把所有传感器设置为不需要。 All sensors supported in the Manifest.xml file

最后,Chromebook也不支持一些软件功能。如下面代码段所示,应用程序提供的自定义IMEs,窗口部件,壁纸或主屏幕等功能,它们不被支持,在安装时也不可用。

<uses-feature android:name="android.software.input_methods" />
<uses-feature android:name="android.software.app_widget" />
<uses-feature android:name="android.software.live_wallpaper" />
<uses-feature android:name="android.software.home_screen" />

  • Leverage support for multi-window mode

好消息!在Chrome OS上实现的Android应用将会包括基础的多窗口支持。相比于机械地全屏绘制,Chrome OS的Android应用会被渲染为合适的布局。Google提供了对常用窗口布局的支持:

Portrait:Similar to Nexus 5

LandscapeSimilar to Nexus 7

Maximized:Uses all available screen pixels

此外,我们为终端用户提供了窗口控制,用户可以在所有可用布局中进行切换。通过选择正确的方向选项,你可以确保用户在启动应用时能得到正确的布局。当Portrait和Landscape都可用时,默认会选择Landscape。如果Landscape不能选择时,将会默认为Portrait。一旦设定好一个模式后,每个应用都会记录自己被设定的模式,你可能想知道你的应用通常会被设定为哪种屏幕尺寸,然后针对这尺寸进行优化。

  • Use the keyboard, trackpad, and mouse

所有的Chromebook都支持物理键盘和触摸屏。有些Chromebook和更多即将推出的Chromebook都会支持触摸屏。有些设备可以在笔记本和平板之间转换,你将会有机会在更多不同形式的设备上推广你的应用。

不需要额外的代码,很多现有的应用已经支持鼠标和触摸板的交互。一个最佳的实现是,当用户使用触摸板而不是触摸屏和你的应用交互时,你应该使得程序的行为适应用户,并且正确地支持和区别所有的接口。有了物理键盘,你应该加入对快捷键的支持以提高用户的效率。

  • Using backup and restore effectively

Chromebook其中一个最好的功能是,用户可以把他们的Chromebook丢到河里(不要酱),买一个新的设备,登录后他们所有的应用仍然在那里。相比于Android设备,这需要更少的配置。所以,虽然它不是强制的,但把数据备份到云会使得很多人更快乐。

Chromebook也会被一大群人共享,例如在学校里。当然,本地内存是不是无限的,因此会在某个时间点,设备上的所有账号,和他们的数据,会从设备上删除。对学校的这种场景,使用云备份是很有需要的。

  • Migrate from M to N

跟从上面的步骤,你可以很好的支持多窗口,但我们推荐你使用Android N版本的API,它可以更好的支持多窗口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值