2023/05/05
MQTT服务器
自己搭建
对于自己搭建,可以分为以下两种:
- 局域网内搭建:
优点:免费,不要用云服务器。 缺点:只能在局域网中使用,无法在广域网中使用。
如果只是想简单学习一下MQTT,可以在局域网内自己搭建一个,具体搭建教程在CSDN有很多,大家可以自行搜索一下。 - 广域网内搭建:
优点:可以在广域网使用。 缺点:需要购买云服务器(或自己具有公网IP等条件)。
搭建教程可以参考 centOS安装EMQX搭建MQTT服务器 。
顺便说一下(不是打广告哈),最近阿里云好像在做一个什么学生认证活动,可以白嫖一段时间的云服务器,感兴趣的小伙伴可以去试一下。你们自行去尝试,出现问题与我无关哈(手动狗头保命)。
使用第三方服务器
第三方MQTT服务器还是挺多的,有企业的也有个人的。
在此推荐一个 然也物联 , 可以免费使用公共的MQTT服务器,在学习MQTT阶段进行简单的测试还是不错的。(具体自行研究)
企业版像阿里云、腾讯云也都有MQTT服务,但不建议个人使用,之前用过一次阿里云MQTT服务,一个Topic一天两块钱,可以几十万次收发量,单次收发确实便宜,但对于个人来说用不到几次还是有点肉疼的。(个人观点,收费为前年标准,不代表现在,各位自行研究哈)
MQTT上位机
微信小程序开发
微信小程序开发MQTT上位机还是比较简单的,但存在一个缺点,由于微信小程序一般需要面向公众发布,因此对服务器地址有着较为严格的安全要求,必须经过备案之后才可使用,不能直接使用服务器IP地址。如果有较为完备的MQTT服务器,可以尝试一下微信小程序开发上位机,若是自己纯手工搭建的野生MQTT服务器,建议采用Android Studio开发方式。
Android Studio开发
没有限制,可以直接访问MQTT服务器的IP地址进行访问,但学习成为较高。
在此为大家贴出几个自己看过的比较好的教程。
如果为了参加比赛,学习一下安卓的 activity、textview、imageview、button、editview 估计就够用了。activity主要看下前端线性布局(也就是手机页面的整体布局),textview学下如何将获取到的数据以文字的形式显示到屏幕上(例如上位机收到了设备的 25.5℃的数据将其显示到屏幕上),imageview学下如何根据获取到的数据显示或隐藏对应的图片(例如上位机收到了1显示图片 收到了0隐藏图片),button学下对屏幕上按键的监听事件(例如按下某个按键之后手机向服务器推送某个数据),editview看下如何将输入到编辑框的文字存储到后端(在输入IP地址,用户名等过程中会用到)。
下面是教程具体链接:
子林Android :Android Studio 具体教程
阿正啷个哩个啷 : Java MQTT速成