APP与华为云和设备端的通信

前面写了底层设备通过4G模块和wifi模块两种方式连接到华为云,实现了设备端到云端数据的双向传输,链接如下:

4G模块(EC600N)通过MQTT连接华为云

esp8266WiFi模块通过MQTT连接华为云

现在要实现的手机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获取步骤如下:

  1. 在华为云首页右上角,单击"控制台"。
  2. 在右上角的用户名中选择"我的凭证"。
  3. 在"我的凭证"界面,API凭证页签中,查看项目ID。
    项目id这里一定要选对应地区的凭证(必须带\),直接复制就行
    device_id ,设备id

如图所示:

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

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

具体效果图

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

进行AI分析后的结果:

相关推荐
蜗牛会飞 20243 天前
大数据时代个人信息保护五大挑战
开发语言·华为云·个人开发·c5全栈
MMendex5 天前
华为云项目实战day1
linux·服务器·nginx·华为云·ssh·负载均衡
李boyang7 天前
基于 STM32F103 + ESP8266 实现 DHT11 温湿度数据上传华为云 IoT 平台
stm32·物联网·华为云·esp8266
江湖有缘8 天前
基于华为openEuler系统部署MicroBin粘贴板工具
华为·docker·华为云·openeuler
腾科IT教育8 天前
广东广州华为认证考点在哪里
华为云·云计算·hcie·华为认证考试
第十个灵魂9 天前
“买“龙虾第一期:OpenClaw@华为云
人工智能·华为云·it运维·maas·openclaw·小龙虾
大河qu9 天前
HCIP-IoT/H52-111 真题详解(章节A),行业解决方案与华为云 /Part2
华为云·hcip·h52-111·物联网行业解决方案
江湖有缘9 天前
基于华为openEuler搭建Coolmonitor监控服务
linux·华为云·openeuler
枕石 入梦1 个月前
华为云服务器本地部署大模型实战(Ollama + Tesla T4 踩坑记)
服务器·人工智能·大模型·华为云
开开心心_Every1 个月前
剪切板工具存500条,可搜索备份导入导出
linux·运维·服务器·华为od·edge·pdf·华为云