代号一 ios 蓝牙扫描但未连接

Codename One ios Bluetooth scanning but not connecting

我正在尝试编写一个简单的应用程序来扫描和连接到蓝牙设备。自最新更新以来,我注意到蓝牙库在从代号 one 首选项安装时不起作用 - 它安装并且我没有发现任何异常,但蓝牙功能不起作用。我已经尝试在 https://github.com/codenameone/bluetoothle-codenameone 下载最新的 repo,并将蓝牙库复制到我的项目中,但我在 IOS 和 Android 上得到了相同的结果。我最终通过将旧版本的蓝牙库(我使用旧代号 one 首选项 GUI 安装)复制到新项目来解决了这个问题,它在 android.

上工作得很好

然而,在 IOS 上,我可以成功扫描设备,但无法连接到任何设备。

    try {
                    bluetooth.connect(new ActionListener() {
                        @Override
                        public void actionPerformed(ActionEvent evt) {
                            ToastBar.Status status = ToastBar.getInstance().createStatus();
                            status.setMessage("Connected");
                            status.show();
                        }
                    }, address);
                } catch (IOException ex) {
                    ToastBar.Status status = ToastBar.getInstance().createStatus();
                    status.setMessage(ex.getMessage());
                    status.show();
                }

我有 ios.NSBluetoothAlwaysUsageDescription 构建提示,蓝牙似乎可以正常工作,因为我可以扫描,但是当我尝试连接时,回调不会执行,也不会抛出任何异常。我已经尝试使用“请求”和“statusReceiver”参数的所有不同组合来初始化蓝牙,但没有成功。我已经三次检查了我尝试连接的地址。我已经更改了回调方法(以防 Toastbar 出现问题)但我可以在我尝试连接的设备上看到没有建立任何连接。我已经在 IOS 12 和 14 上试过了,但两者都产生了相同的结果

首先,有谁知道如何让最新的 CN1 蓝牙库正常工作?其次,在连接到 ble 设备时 IOS 是否缺少某些内容?任何让 IOS 连接到我的设备的想法都将不胜感激

蓝牙 cn1lib 和 CN1JSON cn1lib 的构建似乎都存在一些问题。这些现在已更新和修复。您需要通过 Codename One 首选项更新库才能使此修复生效。