查找Android蓝牙配对设备

查找Android蓝牙配对设备,android,bluetooth,Android,Bluetooth,我正在尝试创建一个图像按钮,当按下该按钮时,会向用户显示要连接的配对蓝牙设备的列表 ImageButton bSearch = (ImageButton) findViewById(R.id.Search); bSearch.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { ##1Set<BluetoothD

我正在尝试创建一个图像按钮,当按下该按钮时,会向用户显示要连接的配对蓝牙设备的列表

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
但是,我在第##1点得到“集合不能解析为变量”, 在第2点“Marrayadapper无法解决” (##1和##2不属于代码的一部分…)

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
我使用了安卓网站上的代码,但在黑暗中,我发现自己陷入了黑暗

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
我希望得到一些指导

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
//搜寻

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
ImageButton b搜索=(ImageButton)findViewById(R.id.Search);
b search.setOnClickListener(新视图.OnClickListener(){
public void onClick(视图){
##1Set-pairedDevices=mBluetoothAdapter.getBondedDevices();
//如果有配对的设备
如果(pairedDevices.size()>0){
//循环通过配对设备
用于(蓝牙设备:pairedDevices){
//将名称和地址添加到要在列表视图中显示的阵列适配器
##2mArrayAdapter.add(device.getName()+“\n”+device.getAddress());
}
}                                                                           
}                       
});
只需分别从代码的
##1Set
##2ArrayAdapter
中删除
#1
#2即可。我想你只是从另一个来源复制/粘贴,而没有注意到。这不是原始代码的一部分。它只是用于列表编号的目的

对于1)如果您还没有这样做,请添加

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
>导入java.util.Set

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
在您的导入语句中。这将解决“设置”错误

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
对于2)声明并初始化

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
mArrayAdapter

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
例如,在您的活动中执行:

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
private ArrayAdapter<String> mArrayAdapter;
注意这一行:

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
 mArrayAdapter= new ArrayAdapter<String>(this, <your layout file>);
 // Attempt to connect to the device
 mChatService.connect(device);

此功能连接到蓝牙设备。第一次,它会要求您自动配对。配对后,下一次它将自动连接到蓝牙设备。

您好,您也可以在刚刚获得绑定设备集的位置尝试此代码。

ImageButton bSearch = (ImageButton) findViewById(R.id.Search);
bSearch.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {                        
        ##1Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        // If there are paired devices
        if (pairedDevices.size() > 0) {
            // Loop through paired devices
            for (BluetoothDevice device : pairedDevices) {
                // Add the name and address to an array adapter to show in a ListView
                ##2mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
            }
        }                                                                           
    }                       
});
 private ArrayAdapter<String> bondedAdapter = null;
    private ListView listViewPairedDevices = null;

@Override
    protected void onStart() {
        // TODO Auto-generated method stub
        super.onStart();
        try {
    BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
    listViewPairedDevices = (ListView) findViewById(R.id.listViewPairedDevices);
    bondedAdapter = new ArrayAdapter<String>(this, R.layout.lyt_scanlist_textview);

    Set<BluetoothDevice> bondedSet = bluetoothAdapter.getBondedDevices();
                Log.v(BluetoothDemoActivity.LOG, "BluetoothDemo : bondedSet: "+bondedSet);

                int count = 0;
                if(bondedSet.size() > 0){
                    for(BluetoothDevice device : bondedSet){
                        textViewPairedDevice.setVisibility(View.VISIBLE);
                        bondedAdapter.add(device.getName()+"\n"+device.getAddress());
                        Log.v(BluetoothDemoActivity.LOG, " count = "+count++);
                    }
                }else{
                    bondedAdapter.add("No Devices");
                }

    listViewPairedDevices.setAdapter(bondedAdapter);
} catch (Exception e) {
            // TODO Auto-generated catch block
            Log.e(BluetoothDemoActivity.LOG, e.toString(),e.fillInStackTrace());
        }
    }//onStart ends 
private ArrayAdapter bondedapter=null;
私有ListView listViewPairedDevices=null;
@凌驾
受保护的void onStart(){
//TODO自动生成的方法存根
super.onStart();
试一试{
BluetoothAdapter=BluetoothAdapter.getDefaultAdapter();
listViewPairedDevices=(ListView)findViewById(R.id.listViewPairedDevices);
bondedAdapter=new ArrayAdapter(这个,R.layout.lyt\u scanlist\u textview);
Set-bondedSet=bluetoothAdapter.getBondedDevices();
Log.v(BluetoothDemoActivity.Log,“BluetoothDemo:bondedSet:”+bondedSet);
整数计数=0;
如果(bondedSet.size()>0){
用于(蓝牙设备:bondedSet){
textViewPairedDevice.setVisibility(View.VISIBLE);
添加(device.getName()+“\n”+device.getAddress());
Log.v(BluetoothDemoActivity.Log,“count=“+count++”);
}
}否则{
bondedAdapter.添加(“无设备”);
}
setAdapter(绑定适配器);
}捕获(例外e){
//TODO自动生成的捕捉块
e(BluetoothDemoActivity.Log,e.toString(),e.fillInStackTrace());
}
}//开始结束

根据您的描述,您似乎有语法错误。第一个似乎只是缺少Set类的导入,另一个是您尚未定义mArrayAdapter。嘿,您能给出在我们的设备中搜索支持蓝牙的设备的完整源代码吗。提前感谢。感谢您的回复。非常感谢您的帮助。我查看了蓝牙聊天示例,很难理解。没有提供设备搜索和选择配对设备的按钮。有不同的例子吗?是的,我只是把它包括进来,以显示我的问题在哪里。好的,任何人都可以参考我的问题。我找到的解决问题的最佳方法是,我可以创建一个按钮,打开蓝牙设置屏幕。我没有意识到你可以这样做,否则我从一开始就会这么做。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。startActivity(新意图(设置、动作和蓝牙设置));嘿,我知道它很老了,但不管怎样:P我如何在列表视图中连接设备?你能给我介绍一下这样的东西吗?或编辑。。谢谢