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分析后的结果:

相关推荐
mengpp_1234562 天前
物联网云平台可以离线使用吗?摒弃云端依赖,工业现场离线自动化解决方案
运维·物联网·自动化·华为云
爱吃鱼的喵️7 天前
华为云腾讯云阿里云哪个好:华为云、腾讯云、阿里云对比分析
阿里云·华为云·腾讯云
rememberme0019 天前
华为云 CodeArts Pipeline前端 Vue 项目自动打包发布配置指南
前端·vue.js·华为云
youtootech16 天前
HarmonyOS 实战教程(八):个人中心与华为云服务集成 —— 以「柚兔自测量表」为例
华为·华为云·harmonyos
陈天伟教授21 天前
华为云 阿里云 腾讯 WorkBuddy的工具对比
阿里云·华为云·云计算
William Dawson23 天前
【华为云 MRS Redis 安全集群 Kerberos 认证接入实战(Spring Boot \+ Jedis)】
redis·安全·华为云
William Dawson1 个月前
【国产化改造实战|Spring Boot对接华为云MRS Redis Kerberos认证终极踩坑指南】
spring boot·redis·华为云
Database_Cool_1 个月前
阿里云 PolarDB vs 华为云 GaussDB/TaurusDB:MySQL 生态云数据库选型指南
数据库·阿里云·华为云
2601_962072552 个月前
李梦娇常识4600问|题库|打印版
sql·华为od·华为·c#·华为云·.net·harmonyos
烂白菜2 个月前
智码美形:华为云码道 × UI-UX-Pro-Max 高品质界面智能生成实践
ui·华为云·ux