To return a set of paired or bonded BluetoothDevice objects, the getBoundedDevices() method of BluetoothAdapter class is used.
Example:
In the below example, we are demonstrating the use of the BluetoothAdapter class to check if the bluetooth is turned off. Here, we are turning the bluetooth on, if it is off and then we are listing all the paired devices.
activity_main.xml:
In the activity_main.xml file, we will drag a Textview from the pallet.
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="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="Paired Devices:" /> </RelativeLayout> |
AndroidManifest.xml:
In the AndroidManifest.xml file, we will provide the below permissions:
Syntax:
<uses-permission android:name="android.permission.BLUETOOTH" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> |
File: AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.radioapp"> <uses-permission android:name="android.permission.BLUETOOTH" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <application android:allowBackup="true" android:icon="@drawable/java" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".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:(File: MainActivity.java)
In the MainActivity.java file, we will write the code to provide the list of paired or bounded bluetooth devices.
package com.example.radioapp; import android.os.Bundle; import android.app.Activity; 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; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textview1 = (TextView) findViewById(R.id.textView1); // Getting the Bluetooth adapter btAdapter = BluetoothAdapter.getDefaultAdapter(); textview1.append("\nAdapter: " + btAdapter); CheckBluetoothState(); } /* It is called when an activity completes.*/ @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() { // Checks for the Bluetooth support and then makes sure it is turned on // If it isn't turned on, request to turn it on // List paired devices if(btAdapter==null) { textview1.append("\nBluetooth NOT supported. Aborting."); return; } else { if (btAdapter.isEnabled()) { textview1.append("\nBluetooth is Enabled."); // Listing paired devices textview1.append("\nPaired Devices are:"); Set<BluetoothDevice> devices = btAdapter.getBondedDevices(); for (BluetoothDevice device : devices) { textview1.append("\n Device Name: " + device.getName()); } } else { //Prompt user to turn on Bluetooth Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT); } } } } |
Output: