当前位置: 首页 > news >正文

河源正规网站建设价格在线分析网站

河源正规网站建设价格,在线分析网站,青岛seo关键词,做网站汉狮网络目录 引言 安装MQTT软件包 避免MQTT软件包自动升级 程序的编写 运行测试 结语 引言 虽然我的课主要是OpenHarmony南向开发的#xff0c;但是结课时有个同学说他在写鸿蒙APP时无法将MQTT库加入到设备中#xff0c;希望我帮忙看看。由于他没有鸿蒙的真机#xff0c;只能…目录 引言 安装MQTT软件包 避免MQTT软件包自动升级 程序的编写 运行测试 结语 引言 虽然我的课主要是OpenHarmony南向开发的但是结课时有个同学说他在写鸿蒙APP时无法将MQTT库加入到设备中希望我帮忙看看。由于他没有鸿蒙的真机只能用DevEco Studio中通过的模拟器来实现而自带的模拟器只支持API9和API6而下载的MQTT库是支持API11的。今天就来说说在API9中如何实现MQTT客户端使用的DevEco Studio版本是3.11。 安装MQTT软件包 官方有个MQTT软件包ohpm/mqtt我写作时最新的版本是2.14针对的是API12。虽然可以将其降级为2.0.5-rc.0或者2.0.6使其支持API9但是由于其是从C语言版本移植过来的依赖C语言的库文件.so)而官方仓库中只提供了ARM版本的所以在真机上可以用但是在基于x86的本机模拟器上没法用会出现”Failure[ERR_INSTALL_PARSE_NATIVE_SO_FAILED]“错误。如果要使用就需要使用SDK重新编译C语言文件产生x86可以用的库文件有点麻烦。 今天推荐使用paho-mqtt: paho-mqtt移植这个库是从js版本移植过来的没有C语言编译的问题。当然这个库的限制是其使用的是websocket通信因此只支持ws或wss开头的websocket连接方式的MQttBooker服务。 好在现在支持wss的服务器比较多像巴法云、华为IoTDA、emqx都支持因为小程序多使用wss。 安装软件包可以在Terminal中使用如下命令 ohpm install yyz116/paho-mqtt 安装后要修改oh_modules/yyz116/paho-mqtt/src/main/module.json文件将其中的minAPIVersion和targetAPIVersion版本号都改为9。 {app: {bundleName: com.yyz116.paho.mqtt,debug: true,versionCode: 1000000,versionName: 1.0.0,minAPIVersion: 9,targetAPIVersion: 9,apiReleaseType: Release,compileSdkVersion: 5.0.0.65,compileSdkType: HarmonyOS,appEnvironments: [],bundleType: app},module: {name: library,type: har,deviceTypes: [default,tablet],packageName: yyz116/paho-mqtt,installationFree: false,virtualMachine: ark12.0.2.0,compileMode: esmodule,dependencies: []} } 避免MQTT软件包自动升级 上面的操作中修改了module.json文件但是当三方包发布新版本后点击同步工程会出现默认更新安装的三方包版本情况。为了避免这种情况手工修改oh-package.json5将其中yyz116/paho-mqtt一行版本号前面的“^符号删除掉这样保证安装固定版本的三方包。 {name: myapplication,version: 1.0.0,description: Please describe the basic information.,main: ,author: ,license: ,dependencies: {yyz116/paho-mqtt: ^1.0.1},devDependencies: {ohos/hypium: 1.0.6},dynamicDependencies: {} } 程序的编写 我编写了一个简单的测试程序在前面先加上引用。 import MQTT from yyz116/paho-mqtt 然后在按钮点击的事件函数中加入代码 buttonClick(){let client new MQTT.Client(bemfa.com, 9504, /wss,xxxxxxxx);client.trace msg {console.log(msg.message);};client.connect({timeout: 10,keepAliveInterval: 60,cleanSession: true,useSSL: true,// invocationContext: {// asdf: true,// },onSuccess: o {//console.log(connected: , o.invocationContext.asdf);console.log(connected: );promptAction.showToast({message: 连接到服务器 //弹窗内容});client.send(light002, 123456, 0, true);},mqttVersion: 3,onFailure: e {console.error(could not connect: , e.errorMessage);promptAction.showToast({message: 无法连接到服务器 //弹窗内容});},reconnect: false,});}这里需要注意巴法云加密websocket协议端口9504 path/wss。这和TCP端口是不同的。 为程序加入访问网络的权限修改src/main/module.json5文件加入requestPermissions这一段。 ......pages: $profile:main_pages,requestPermissions: [{name: ohos.permission.INTERNET,usedScene: {when: always}}],abilities: [ ...... 运行测试 启动模拟器运行程序如下。点击Connect按钮就可以了。 登录到巴法云后台可以看到light002设备的值已经被更新。 结语 至此基本完成了在API9和x86模拟器上运行MQTT客户端的要求。如果各位有更好的办法欢迎留言。
http://www.zqtcl.cn/news/322294/

相关文章:

  • 适合建设网站的国外服务器人工智能培训机构
  • 怎么套网站潜江资讯网招聘信息
  • 网站建设 微信公众号建设网站需要
  • 做房产经纪的那些网站可以进客网站关键词排名如何做
  • 网站建设实验总结百科wordpress 前台插件
  • 招聘网站建设销售成都 网站建设
  • 手机选择网站wordpress捐赠按钮
  • 网站建设上动漫制作教学
  • 怎么用cms做网站计算机网络技术专业
  • 建设部颁发的证书网站请问注册公司怎么注册
  • 网站开发php和c语言区别网站开发教程大全
  • 建设银行通控件网站谷歌推广
  • 我要建网站需要什么付费wordpress
  • 网站收录查询情况wordpress主题仿
  • 网站单页生成器c 网站开发需要学什么
  • 什么网站是免费的免费图片链接生成器
  • 网站建设伍金手指下拉9服务器多少钱
  • 手机网站大全网站收费网站推广
  • 华企立方做网站自己动手做导航网站
  • 如何建设教师网上授课网站重庆建设网站哪家专业
  • 企业网站页头背景图建设三轮摩托车官网
  • 直播网站创做上海idc机房托管
  • 受欢迎自适应网站建设地址c2c二手车交易平台
  • 做个平台网站怎么做房价查询
  • 自学网站建设最快要多久asp.net 手机网站开发
  • 淮安做网站找哪家公司verycloud wordpress
  • 无法连接到wordpress站点网站建设的 几点
  • 网站免费空间购买wordpress支持页面模版
  • 腾讯建设网站视频宁波城乡住房建设厅网站
  • 乐清网站开发公司个人网站建设工作室