更新记录

0.1.0(2023-12-04)

  1. 基于原生Android开发的 uni-app 插件,实现YSL101/YSL301通信;
  2. 向设备发送控制命令,HEX格式发送;
  3. 实时监听接收到的返回数据;
  4. 在USB接口或OTG接口插入CH34X芯片设备,会自动打开本软件;
  5. 控制指示灯的亮灭/蜂鸣器的开与关;

平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 12.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


dodo-uniplugin-yslSerialPort

插件测试平台

  1. 测试平板:PET_A133、PET_RK3568;

  2. 测试手机:vivo、小米、摩托罗拉;

  3. 测试系统:Android 12;

  4. 设备不需要root;

  5. Android 设备具有 USB Host 或 OTG 接口;

功能简介

  1. 基于原生Android开发的 uni-app 插件,实现YSL101/YSL301通信;
  2. 向设备发送控制命令,HEX格式发送;
  3. 实时监听接收到的返回数据;
  4. 在USB接口或OTG接口插入CH34X芯片设备,会自动打开本软件;
  5. 控制指示灯的亮灭/蜂鸣器的开与关;

使用方法

引用

    // #ifdef APP-PLUS
        const serialPort = uni.requireNativePlugin('dodo-uniplugin-yslSerialPort')
    // #endif

API

  1. 在插入USB后,获取连接的设备并进行初始化

       serialPort.initSerialPortT("usbT", (res) => {        
           if (res?.list) {
               console.log(res.list)
        }
       })
  2. 打开指定的串口,默认插入一个报警设备,会找到两个串口设备,选择正确的设备将其打开

       let path='/dev/bus/usb/005/003'
        serialPort.openSerialPortT(path, res => {           
       })
  3. 设置打开串口的配置等待时间,默认为0即可,如打开串口或接收数据有异常,可尝试修改为1

    serialPort.setDelayTime(0, res => {
        console.log(res)
    })
  1. 向设备发送命令

    如:打开蜂鸣器(一直响) :01050003ff007C3A

    serialPort.sendHex(item.path, '01050003ff007C3A', 2000, res => {
        //2000为超时间,默认2000毫秒,如发送数据有异常,可尝试修改此数值
        if (res?.success) {
            uni.showToast({
            icon: 'none',
            title: '发送成功!',
            duration: 2000
            });
    } else
          uni.showToast({
             icon: 'none',
             title: '发送失败!',
              duration: 2000
          });
    })

如果觉得可以就点个👍吧,您的关注就是我们的动力!

有使用问题或项目定制需求,联系微信

  • rick6655(请备注添加原因)

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问