0

我有一个显示可用配对设备的应用程序。

它第一次工作,显示范围内的一个配对设备,但如果我关闭并重新打开应用程序,设备不会显示。两个 BT 都打开,并且它们已配对

关于为什么的任何想法?

代码

private void getPairedDevices() {
    // TODO Auto-generated method stub
    devicesArray = btAdapter.getBondedDevices();
    if(devicesArray.size() > 0){
        for(BluetoothDevice device:devicesArray){
            pairedDevices.add(device.getName());
        }
    }
}

这就是我获取配对设备并将它们添加到阵列的代码。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    init();
    if(btAdapter == null){
        Toast.makeText(getApplicationContext(), "no bluetooth detectd", 0).show();
        finish();
    }
    else{
        if(!btAdapter.isEnabled()){
            turnOnBt();
        }   
    }
    getPairedDevices();
    startDiscovery();
}
private void startDiscovery() {
    // TODO Auto-generated method stub
    btAdapter.cancelDiscovery();
    btAdapter.startDiscovery();
}
private void turnOnBt() {
    Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
    btAdapter.enable();
}
private void getPairedDevices() {
    // TODO Auto-generated method stub
    devicesArray = btAdapter.getBondedDevices();
    if(devicesArray.size() > 0){
        for(BluetoothDevice device:devicesArray){
            pairedDevices.add(device.getName());
        }
    }
}

该方法适合并从中调用。

谢谢

4

0 回答 0