003-HC32F460(华大)+Air724UG(4G GPRS)基本控制篇(阿里云物联网平台)-在阿里云物联网平台上一型一密动态注册设备(Android)
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ZLIOTA/Air724UG/aliyun.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
前言
如果咱自己做产品,APP端肯定是一个程序.
如果咱向前面章节似的自己去云端注册设备,然后再把设备的信息(三元组)给用户,
然后用户再填写信息接入,这样用户体验不好,过于繁琐,也无疑增加了人工成本.
应该是用户打开手机APP,然后APP自己去云平台注册一个设备,然后接入云平台实现通信
动态注册的方式(咱使用的是,一型一密免预注册)
先解释几个名词:一机一密 ;一型一密(预注册) ;一型一密(免预注册)
一机一密:
就是咱原先测试的在网页上去手动注册设备,然后把ProductKey、DeviceSecret、DeviceName
给设备,然后设备根据这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了
https://help.aliyun.com/document_detail/74005.html?spm=a2c4g.11186623.6.585.3bb41114l1EN77
一型一密(预注册):
需要咱先在网页上注册上设备,然后把ProductKey、ProductSecret、DeviceName
给设备,然后设备通过https或者mqtt获取DeviceSecret
然后设备根据ProductKey、DeviceSecret、DeviceName这三个信息组合计算下得到mqtt的连接参数,然后就连接通信了
一型一密(免预注册): 免预注册就是不用在云端自己注册设备,设备连接上网络以后设备自己去注册.
这样子的话,每个设备烧录同样的程序就可以,不用再配置什么三元组了!
不过每个设备程序里面的需要写上产品的ProductKey 和 ProductSecret 的值,这两个值是固定的.
主要是区分开你注册的时候注册到哪个产品下.
然后设备通过https或者mqtt接口注册设备,
注册的时候服务器会返回ClientID和DeviceToken 等参数
最后按照平台规定的组合MQTT参数
MQTT连接的方式注册设备:
拼接注册返回的参数连接MQTT:
测试本节一型一密(免预注册)程序
1.打开本节的Android程序
2.登录自己的云平台打开动态注册
注:选择哪个产品,设备就会注册到哪个产品下
打开动态注册
3,查看并替换自己产品的ProductSecret; ProductKey;
4,查看并替换自己instanceId
提示:在2021年7月30日之前购买的实例是没有 instanceId 的, 程序里面可保持空
提示:有 instanceId , 则填写上实例的 instanceId
4.下载安装到手机
注:注册的时候设备名字是可以自己规定的
5.输入设备的名称,然后点击注册设备
我写的是 regapp
8.注册成功以后自动跳转到主页面
9.用户可以看下日志,和刷新下云平台设备列表
源码说明
1. 注册设备我封装成了一个java文件
2.用户调用这个函数注册设备(形参为设备的名字)
3.程序运行的时,如果没有注册过设备,则跳转到注册页面
4.用户点击按钮,调用注册函数注册设备
5.注册完成跳转到主页面
6.主页面如果判断有注册的信息执行连接MQTT程序
结语
之所以我把注册时的设备名称拿出来,是因为咱后面可以和手机验证码结合.
用户拿到手机APP之后用户需要用手机号登录注册,然后呢设备的名字就用手机号代替.
注意: 产品的 ProductSecret 和 ProductKey 别泄露了哈!!!!!
如果让别人知道了之后,别人也可以在你的平台上动态注册设备并接入了!!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2020-12-20 数据处理思想和程序架构: 对使用的数据进行优先等级排序的缓存
2019-12-20 ESA2GJK1DH1K升级篇: STM32远程乒乓升级,基于Wi-Fi模块AT指令TCP透传方式,MQTT通信控制升级-APP用户程序制作过程
2016-12-20 关于STM32的外部引脚中断的问题