1

我正在开发一个应用程序,我必须在其中连接到 Android 4.3 上的蓝牙设备。

我可以扫描并连接到设备,我想连接到多个 BLE 设备并列出它们。

我找到了 getConnectedDevices(),但它在 BluetoothHeadset、BluetoothProfile 和 BluetoothA2dp 中有多种类型。

**第一个问题是**这三个 API 有什么不同???哪个更好 ??****

我尝试了以下代码:

public class Main extends Activity {
    private BluetoothHeadset mBluetoothHeadset;
    private BluetoothAdapter mBluetoothAdapter;


    private BluetoothProfile.ServiceListener mProListener = new BluetoothProfile.ServiceListener() {

        @Override
        public void onServiceDisconnected(int profile) {
            // TODO Auto-generated method stub
            if(profile == BluetoothProfile.HEADSET) {
                mBluetoothHeadset = null;
            }
        }

        @Override
        public void onServiceConnected(int profile, BluetoothProfile proxy) {
            // TODO Auto-generated method stub
            if(profile == BluetoothProfile.HEADSET) {
                mBluetoothHeadset = (BluetoothHeadset) proxy;
                }
            }
    };



    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
    mBluetoothAdapter.getProfileProxy(this, mProListener, BluetoothProfile.HEADSET);

   }

我有以下参考,但我不知道如何继续。 如何使用 BluetoothHeadset API 获取蓝牙连接的设备

第二个问题:

我应该在哪里输入List<BluetoothDevice> devices = mBluetoothHeadset.getConnectedDevices();

第三个问题

是否可以点击getConnectedDevices()列出的设备,点击后进行操作如setOnItemClickListener??

我是新手。谢谢大家的指导。

4

0 回答 0