我正在尝试使用 Cordova 将 Web 应用程序移植到本机 Android 应用程序。这相当简单,主要只是将 Midi 消息发送到连接的设备。我知道 WebMidi API 仅在 Android 上最新版本的 Webkit 上受支持,并且我一直在 5.1 上进行测试。我已经设法通过在设备上的 Chrome 上运行原始网络版本来证明基础工作正常,它工作正常。
在 Cordova 中运行时的问题是消息本身由于某种原因没有发送,没有错误,只是没有到达那里。我知道 API 正在工作,因为应用程序的一个单独部分列出了连接的设备并提供了一个下拉列表供您选择,这工作正常,并且可以识别连接的 Midi 设备。但是,当我发送消息时,它们对 Midi 设备没有预期的效果。它们是 SysEx 消息,我认为需要额外的权限,android.webkit.resource.MIDI_SYSEX,是否有可能在 Chrome 上启用但在 Cordova 应用程序上未启用?我尝试将此权限添加到 ./config.xml 和 ./platform/android/AndroidManifest.xml 但无济于事,它似乎没有任何效果,甚至没有显示为附加权限安装时。
根据各种搜索,我还尝试安装 Crosswalk 插件,但根本无法让它工作,甚至连设备列表都没有。
欢迎任何想法。