【问题标题】:Connecting with a specific bluetooth device连接特定的蓝牙设备
【发布时间】:2020-05-24 08:05:28
【问题描述】:

我如何使用 android studio 构建应用程序,该应用程序将尝试连接(单击按钮)到特定设备 - 蓝牙模块 HC-05 v2。我写了“尝试”,因为 HC-05 模块只能连接到 1 个设备。

如果正在处理第一个设备,则队列中的第二个设备将尝试连接,只要它可以连接。所以我要做的是——点击“连接”按钮,手机将尝试连接 hc-05 模块(按名称搜索?),如果找到它——连接到它。 15 秒后将自动断开连接,队列中的第二个设备将连接 15 秒,以此类推。

我做了一些步骤来使用应用程序启用/禁用蓝牙,但不知道如何设置自动连接(电话->BT 模块)仅 15 秒。

这是我的代码:

BluetoothAdapter bt;
private final String TAG="MainActivity";
Button button=(Button) findViewById(R.id.button);
Button polacz=(Button) findViewById(R.id.polacz);



public void enableDisableBT() {
    if (bt == null) {
        Log.d(TAG, "enableDisableBT: Brak mozliwosci polaczenia.");
    }
    if (!bt.isEnabled()) {
        Log.d(TAG, "enableDisableBT: włączanie BT'ka");
        Intent enableBTIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
        startActivity(enableBTIntent);
        IntentFilter BTIntent = new IntentFilter((BluetoothAdapter.ACTION_STATE_CHANGED));
        registerReceiver(receiver, BTIntent);
    }
    if (bt.isEnabled()) {
        Log.d(TAG, "enableDisableBT: wyłączanie BT'ka");
        bt.disable();
        IntentFilter BTIntent = new IntentFilter((BluetoothAdapter.ACTION_STATE_CHANGED));
        registerReceiver(receiver, BTIntent);
    }
}

【问题讨论】:

    标签: android bluetooth hc-05


    【解决方案1】:

    我不太了解您的应用程序的全部要点,但无论如何,要连接到任何特定设备,您需要知道其名称或 MAC 地址或特定服务或特性。 因此,您需要或添加扫描屏幕,用户可以在其中选择所需的设备或硬编码设备参数之一。 当您获得所需设备的列表时,您可以扫描它们。

     new ScanCallback() {
                    @Override
                    public void onScanResult(int callbackType, ScanResult result) {
                       result.getDevice().getAddress()// get device MAC
                       result.getDevice()// get device
                    }
     }
    

    然后连接到设备并在特定时间后断开连接。 您可以根据需要实施所有其他人员。例如,您可以将已连接的设备保存到列表中以避免重新连接等

    您可以在这里阅读更多内容:https://medium.com/@avigezerit/bluetooth-low-energy-on-android-22bc7310387a

    【讨论】:

    • 我不得不将应用程序应用到我的项目,该应用程序“点击”连接到特定设备并在几秒钟后断开连接。我通过 MAC 地址和 UUID 连接它,不幸的是 15 秒后我没有设法断开连接
    • 你的问题是什么?不知道怎么断?能否请您详细描述一下,以便我提供帮助
    猜你喜欢
    • 2016-06-08
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-08
    • 2016-07-08
    相关资源
    最近更新 更多