Android Things 物联网应用开发初体验

来源:互联网 发布:淘宝商家直播入口 编辑:程序博客网 时间:2024/05/21 10:01

Android Things 是 Google 最近推出的全新物联网操作系统,前身是去年发布的物联网平台 Brillo,除了继承 Brillo 的功能,还加入了 Android Studio、Android SDK、Google Play 服务以及 Google 云平台等 Android 开发者熟悉的工具和服务。任何 Android 开发者现在都可以利用 Android API 和 Google 服务轻松构建智能联网设备了,这就是 Google 说的:

If you can build an app, you can build a device.

Android Things 架构

目前,Android Things 已经能够支持 Intel Edison、NXP Pico、Raspberry Pi 3 等硬件平台,好像高通的 Snapdragon 也已经在赶来的路上了。

Android Things 支持的硬件

还有,Android Things 天生支持物联网通讯协议 Weave,可让所有类型的设备能够连上云端并与其他服务如 Google Assistant 交互,现在已经有一些 IoT 设备像 Nest、Hue、SmartThings、WeMo、LiFX 等前来支援 Weave。这些现在看来都不是什么新的概念,就因为觉得不是什么新的概念,估计这种概念也就已经深入人心、习以为常了。

Weave 图解

混迹开源硬件圈,刚好玩过 Intel Edison 和 Raspberry Pi 3,有点套路了,现在就拿他们来体验一下 Android Things。

Android Things @ Intel Edison

使用 Intel Platform Flash Tool Lite 烧录 开发者预览版镜像

烧录开发者预览版镜像

配置你的 Android 开发环境,老司机应该都轻车熟路了。需要下载安装并更新最新版 Android Studio,在天朝这个局域网快速完成此事着实不易:

安装 Android Studio

更新下载 Android Studio 组件

将 Edison 连接到 PC,通过 adb 验证设备是否可用,在 macOS 下,adb 工具存放在 ~/Library/Android/sdk/platform-tools/

$ cd ~/Library/Android/sdk/platform-tools/$ ./adb devices

检查设备是否连接

前往 Google 官方仓库克隆示例,里面有高手必经之路——“点灯大法

$ git clone git@github.com:androidthings/sample-simplepio.git

导入 simplepio 示例

Build → Run,一步到位,如果一切顺利的话,Android Monitor 窗口将有 log 输出,板子上的 LED 闪烁:

输出 log

LED 灭

LED 亮

Android Things @ Raspberry Pi 3

安装最新镜像,准备一张 8G 以上容量的 Micro SD 卡,下载最新镜像,解压,根据开发机器的操作系统,选择相应方式进行烧录:

  • Linux
  • Mac
  • Windows

插上 Micro SD 上电启动系统,可以外接 HDMI 显示器观赏其启动过程:

启动内核中...

启动界面

配置 Wi-Fi,Raspberry Pi 3 不像 Intel Edison 可直接通过 USB 连接至开发机器,需要通过以太网接口进行 IP 连接,之后可以配置 Wi-Fi 无线连接,这样就不需要多余的网线了。

# 先通过有线连接,获取IP$ ./adb connect <ip-address>connected to <ip-address>:5555# adb连接上之后配置 Wi-Fi$ ./adb shell am startservice \    -n com.google.wifisetup/.WifiSetupService \    -a WifiSetupService.Connect \    -e ssid <Network_SSID> \    -e passphrase <Network_Passcode># 验证是否 Wi-Fi 是否连接成功$ ./adb logcat -d | grep Wifi...V WifiWatcher: Network state changed to CONNECTEDV WifiWatcher: SSID changed: ...I WifiConfigurator: Successfully connected to ...# 重启,撤掉网线,获取 Wi-Fi 连接后的设备 IP,可通过 HDMI 显示器获得或从路由器后台获得$ ./adb connect <wifi-ip-address>connected to <wifi-ip-address>:5555# 查看设备是否attached$ ./adb devicesList of devices attached<wifi-ip-address>:5555  device

Demo,这次不搞“点灯大法”了,Raspberry Pi 3 既然能够外接显示器,就来玩玩 UI,前往官方仓库克隆代码:

git clone https://github.com/androidthings/sample-simpleui.git

假设你已经安装好 Android Studio,直接打开 sample-simpleui 工程,Run一下即可将代码部署到板子上。

运行sample-simpleui

simpleui demo

更多玩法

可以多多关注一下 Android Things 的官方网站或仓库,未来应该会有更多好玩的东西出来:

  • Android Things 官网
  • 官方仓库
阅读全文
1 0
原创粉丝点击