前面写了底层设备通过4G模块和wifi模块两种方式连接到华为云,实现了设备端到云端数据的双向传输,链接如下:
现在要实现的手机APP端与云端的双向通信,从而就能实现手机与底层设备的双向通信。本次博主还将手机端的APK接入了AI大模型,在获取到底层的设备数据后进行AI分析具体的数据。
源码结构如下:

完整APK下载链接如下:
https://mbd.pub/o/bread/YZWamZpyaw==
说明:确保配置好自己的华为云端参数,然后把自己华为云端的参数填到APK中即可,如果没配置好的话,会出现获取Token失败。
自己不会配置的,或者需要定制APK的,比如改当前APK的课题名称和默认参数等可以私信作者

大概步骤:
首先需要 获取Token---获取影子设备,进行连接。在本次博主做的APK中将需要连接的华为云的参数单独用文本框的形式写出,可以直接在界面填入自己云端的参数,这样就可以不用二次开发,拿来就能直接使用。
查看影子消息
设备影子是一个用于存储和检索设备当前状态信息的JSON文档。每个设备有且只有一个设备影子,由设备ID唯一标识,设备影子用于存储设备上报的(状态)属性和应用程序期望的设备(状态)属性,无论该设备是否在线,都可以通过该影子获取和设置设备的属性。
GET https://{endpoint}/v5/iot/{project_id}/devices/{device_id}/shadow
路径参数如下 :
{ endpoint },不同账号会有差异,需要按照自己账号填写,进入自己的账号中点击右上角接入信息中进行查看。
project_id ,项目id
从控制台获取项目ID:
在调用接口时,部分URI以及请求体中需要填入项目ID,项目ID获取步骤如下:
- 在华为云首页右上角,单击"控制台"。
- 在右上角的用户名中选择"我的凭证"。
- 在"我的凭证"界面,API凭证页签中,查看项目ID。
项目id这里一定要选对应地区的凭证(必须带\),直接复制就行
device_id ,设备id
如图所示:


我在首页设计了两个按钮入口,一个用于获取查看获取到的原始数据和当前的设备具体信息。另一个是漂亮的UI界面,方便直观的看到获取的到的数据,并且AI分析的结果可以直接显示在界面中。

知识点太多了,懒得一一讲解了,可以私信作者讲解原理,可远程提供一对一源码讲解指导。直接看效果图吧。
具体效果图






在底层设备接受到的手机端发送的消息、命令、参数:



进行AI分析后的结果:

