更新记录
v1.0.2025.04.09(2025-04-09)
1、第一次发布。
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 4.34,Android:4.4,iOS:不支持,HarmonyNext:不支持 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
插件使用说明:
一、使用简介
Android直接连接midi设备,提供双向通信,接受midi设备向Android设备发送消息,同时Android可以主动跟midi设备发送消息。
支持定制,联系QQ:1804945430,微信:18980392735 请备注来源
二、调用范例
<template>
<view>
<page-head :title="title"></page-head>
<view class="uni-padding-wrap uni-common-mt">
<button type="primary" @click="checkUsbDevice_uts">检查USB设备</button>
<button type="primary" @click="connect_uts">连接Midi设备</button>
<button type="primary" @click="disconnect_uts">断开连接</button>
<button type="primary" @click="suspendMidiDevices_uts">暂停</button>
<button type="primary" @click="resumeMidiDevices_uts">恢复</button>
<button type="primary" @click="sendMidiOn_uts">按下</button>
<button type="primary" @click="sendMidi_uts">抬起</button>
<button type="primary" @click="sendMidi2_uts">节拍器开</button>
<button type="primary" @click="sendMidi3_uts">节拍器关</button>
<button type="primary" @click="sendMidiFile_uts">发送midi文件</button>
</view>
</view>
</template>
<script>
// #ifdef APP
import {
checkUsbDevice,
disconnect,
connect,
suspendMidiDevices,
resumeMidiDevices,
sendMidiNoteOn,
sendMidiNoteOff,
sendMidiSystemExclusive,
sendMidiFile,
PS_ON,
PS_OFF
} from '@/uni_modules/uts-midi'
// #endif
export default {
data() {
return {
title: "Midi uts插件 久等了哈哈哈"
}
},
methods: {
connect_uts() {
connect({
connectCallback: (ret) => {
//连接时报错或者连接成功后的回调在这里
console.log('连接状态', ret)
uni.showToast({
icon: 'none',
title: ret
})
},
dataCallback: (data) => {
//接收数据回调在这里
console.log('数据回调', data)
uni.showToast({
icon: 'none',
title: data
})
}
})
},
checkUsbDevice_uts() {
checkUsbDevice((ret) => {
//连接时报错或者连接成功后的回调在这里
console.log('检查USB设备', ret)
uni.showToast({
icon: 'none',
title: ret
})
})
},
disconnect_uts() {
disconnect((ret) => {
//回调在这里,未连接时也可以重复调用
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
})
},
suspendMidiDevices_uts() {
suspendMidiDevices()
},
resumeMidiDevices_uts() {
resumeMidiDevices()
},
sendMidi_uts() {
//参考收到的消息
sendMidiNoteOff({
cable: 0,
channel: 0,
note: 79,
velocity: 70,
result: (ret) => {
//调用结果在这里
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
}
})
},
sendMidiOn_uts() {
//参考收到的消息
sendMidiNoteOn({
cable: 0,
channel: 0,
note: 79,
velocity: 70,
result: (ret) => {
//调用结果在这里
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
}
})
},
sendMidi2_uts() {
sendMidiSystemExclusive({
cable: 0xF0,
systemExclusive: 'F000676574200903010000F7',
result: (ret) => {
//调用结果在这里
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
}
})
},
sendMidi3_uts() {
sendMidiSystemExclusive({
cable: 0xF0,
systemExclusive: 'F000676574200903000000F7',
result: (ret) => {
//调用结果在这里
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
}
})
},
sendMidiFile_uts() {
sendMidiFile({
filePath: '/storage/emulated/0/测试midi文件/test.midi', //midi范例文件地址
result: (ret) => {
//调用结果在这里
console.log(ret)
uni.showToast({
icon: 'none',
title: ret
})
}
})
}
}
}
</script>
<style>
</style>