谷歌发布适用于Android Things的Cloud IoT Core客户端库

谷歌发布了一个客户端库,让开发人员更容易在Android Things设备上使用Google Cloud IoT Core。开发人员可以连接到IoT Core MQTT桥,认证设备,发布设备遥测数据,订阅配置变更,处理错误及网络中断。

\\

Cloud IoT Core是完全托管于谷歌云平台的服务,让开发人员可以安全地连接、管理分散在全球的设备,并从中提取数据。搭配谷歌云平台提供的其他服务,Cloud IoT Core提供了一种实时收集、处理、分析及可视化IoT数据的解决方案。此外,Android Things从设计上就支持用于遥测、强大的计算机可视化、音频处理和机器学习应用程序的数据收集。

\\

谷歌发布适用于Android Things的Cloud IoT Core客户端库

\\

Cloud IoT Core客户端库提供了每个Cloud IoT Core函数的抽象,如发布遥测事件、设备状态,从Cloud IoT Core接收设备配置。

\\

Cloud IoT Core会通过设备注册信息跟踪已核准的设备,每个设备使用一个公共**在服务器上进行身份验证。对于Cloud IoT Core身份验证,客户端库支持RSA和ECC**,并且实现了JSON Web Tokens(JWTs)。

\\

设备可以通过MQTT连接发送一条PUBLISH消息把他们的遥测数据发布到一个或多个存储桶。消息必须以下面的格式发送到MQTT主题:

\\
\/devices/{device-id}/events
\\

使用Cloud IoT Core,开发人员可以监控每个连接设备的状态。设备状态更新通常是由设备变化触发的,例如来自Cloud IoT Core的配置更新,或者来自外部源的变化,如固件升级。设备状态使用以下格式发送到MQTT主题:

\\
\/devices/\u0026lt;device_id\u0026gt;/state
\\

开发人员可以从Cloud IoT Core向设备发送设备配置来控制它。数据可以是任意格式的,如二进制数据、文本、JSON或序列化协议缓冲区。值得一提的是,设备并不一定会接收到每一项配置更新;如果短时间内发布了许多更新,那么设备可能会收不到中间版本。

\\

要开始使用Cloud IoT Core客户端库,需要在Android Things项目的build.gradle文件中增加下面一行:

\\
\implementation 'com.google.android.things:cloud-iot-core:1.0.0'\
\\

下面的Kotlin示例说明了如何基于已有的项目创建一个新的配置和客户端:

\\
\var configuration = IotCoreConfiguration.Builder().\                         .setProjectId(\"my-gcp-project\")\                         .setRegistry(\"my-device-registry\