The getBoundedDevices() method of BluetoothAdapter class provides a set containing list of all paired or bounded bluetooth devices.
In this example, we are checking if the bluetooth is turned off, if yes then turn it on and list all the paired devices.
activity_main.xml
Drag one textview from the pallete, now the activity_main.xml file will like this:
File: activity_main.xml
- <RelativeLayout xmlns:androclass="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- tools:context=".MainActivity" >
-
- <TextView
- android:id="@+id/textView1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentLeft="true"
- android:layout_alignParentTop="true"
- android:layout_marginLeft="18dp"
- android:layout_marginTop="61dp"
- android:text="Showing Paired Devices:" />
-
- </RelativeLayout>
Provide Permission
You need to provide following permissions in AndroidManifest.xml file.
- <uses-permission android:name="android.permission.BLUETOOTH" />
- <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
The full code of AndroidManifest.xml file is given below.
File: AndroidManifest.xml
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:androclass="http://schemas.android.com/apk/res/android"
- package="com.example.bluetoothshowpaired"
- android:versionCode="1"
- android:versionName="1.0" >
-
- <uses-sdk
- android:minSdkVersion="8"
- android:targetSdkVersion="17" />
-
- <uses-permission android:name="android.permission.BLUETOOTH" />
- <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
-
- <application
- android:allowBackup="true"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <activity
- android:name="com.example.bluetoothshowpaired.MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
-
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
-
- </manifest>
Activity class
Let's write the code to provide the list of paired (bounded) bluetooth devices.
File: MainActivity.java
- package com.example.bluetoothshowpaired;
-
- import android.os.Bundle;
- import android.app.Activity;
- import android.view.Menu;
- import java.util.Set;
- import android.bluetooth.BluetoothAdapter;
- import android.bluetooth.BluetoothDevice;
- import android.content.Intent;
- import android.widget.TextView;
-
- public class MainActivity extends Activity {
- TextView textview1;
- private static final int REQUEST_ENABLE_BT = 1;
- BluetoothAdapter btAdapter;
-
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
- textview1 = (TextView) findViewById(R.id.textView1);
-
-
- btAdapter = BluetoothAdapter.getDefaultAdapter();
- textview1.append("\nAdapter: " + btAdapter);
-
- CheckBluetoothState();
- }
-
-
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- if (requestCode == REQUEST_ENABLE_BT) {
- CheckBluetoothState();
- }
- }
-
- @Override
- protected void onDestroy() {
- super.onDestroy();
- }
-
- private void CheckBluetoothState() {
-
-
-
- if(btAdapter==null) {
- textview1.append("\nBluetooth NOT supported. Aborting.");
- return;
- } else {
- if (btAdapter.isEnabled()) {
- textview1.append("\nBluetooth is enabled...");
-
-
- textview1.append("\nPaired Devices are:");
- Set<BluetoothDevice> devices = btAdapter.getBondedDevices();
- for (BluetoothDevice device : devices) {
- textview1.append("\n Device: " + device.getName() + ", " + device);
- }
- } else {
-
- Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
- startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
- }
- }
- }
-
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
-
- getMenuInflater().inflate(R.menu.activity_main, menu);
- return true;
- }
-
- }