更新记录
1.0.0(2024-04-01)
V1.0 上线
平台兼容性
Android |
Android CPU类型 |
iOS |
适用版本区间:4.4 - 11.0 |
armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 |
× |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
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原生插件配置”->”云端插件“列表中删除该插件重新选择
使用流程
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座。
- 开发完毕后正式云打包
- 付费原生插件目前不支持离线打包。
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->
”云端插件“列表中删除该插件重新选择
使用方法
引用方式
const serialPort = uni.requireNativePlugin('SerialPort')
所有API接口
//获取设备信息
getAllDeviceList(callback)
getAllDevicePath(callback)
//设置串口连接信息
setPath(path)
setBaudRate(baudRate)
setStopBits(stopBits)
setDataBits(dataBits)
setParity(parity)
setFlowCon(flowCon)
setFlags(flags)
//串口操作
open(callback)
close()
isOpen()
//接收消息
onMessageHex(callback,sendCallback)
onMessageASCII(callback,sendCallback)
//发送消息
sendBytes(bytes)
sendHex(string)
sendASCII(string)
获取所有设备列表
getAllDeviceList(callback)
参数 |
类型 |
必填 |
说明 |
callback |
function |
否 |
回调函数 |
serialPort.getAllDeviceList(res => {
console.log(res) //设备列表
})
获取所有设备路径
getAllDevicePath(callback)
参数 |
类型 |
必填 |
说明 |
callback |
function |
否 |
回调函数 |
serialPort.getAllDevicePath(res => {
console.log(res) //路径列表
})
设置串口路径
setPath(path)
参数 |
类型 |
说明 |
path |
string |
设置串口路径 |
serialPort.setPath('/dev/ttyS1')
设置波特率
setBaudRate(baudRate)
参数 |
类型 |
说明 |
baudRate |
int |
设置波特率,默认115200 |
serialPort.setBaudRate(9600)
设置停止位
setStopBits(stopBits)
参数 |
类型 |
说明 |
stopBits |
int |
设置停止位 默认值为2 |
serialPort.setStopBits(2)
设置数据位
setDataBits(dataBits)
参数 |
类型 |
说明 |
dataBits |
int |
设置数据位 默认值为8 |
serialPort.setDataBits(8)
设置检验位
setParity(parity)
参数 |
类型 |
说明 |
parity |
int |
设置检验位 默认值为0 |
serialPort.setParity(0)
设置流控
setFlowCon(flowCon)
参数 |
类型 |
说明 |
flowCon |
int |
设置流控 默认值为0 |
serialPort.setFlowCon(0)
设置标志
setFlags(flags)
参数 |
类型 |
说明 |
flags |
int |
设置标志 默认值为0,O_RDWR 读写方式打开 |
serialPort.setFlags(0)
打开串口 open(callback)
参数 |
类型 |
必填 |
说明 |
callback |
function |
否 |
回调函数 callback(object) |
参数 |
类型 |
说明 |
object.status |
bool |
打开串口结果 成功为空,失败为原因 |
serialPort.open(res => {})
关闭当前串口 close()
serialPort.close()
获取打开状态 isOpen()
参数 |
类型 |
说明 |
isOpen |
bool |
当前打开状态 |
监听消息 - 十六进制
onMessageHex(callback,sendCallback)
参数 |
类型 |
必填 |
说明 |
callback |
function |
是 |
回调函数 |
sendCallback |
function |
否 |
回调函数 |
参数 |
类型 |
说明 |
hex |
string |
收到的十六进制消息 |
参数 |
类型 |
说明 |
hex |
string |
发送的十六进制消息 |
-
示例
serialPort.onMessageHex(rec => {
console.log(rec)
},send => { console.log(send)
})
监听消息 - ASCII
onMessageASCII(callback,sendCallback)
-
参数说明
同上
发送的十六进制消息
sendHex(string)
参数 |
类型 |
说明 |
string |
string |
发送的ASCII消息 |