Soheil
Soheil

Reputation: 1706

how to get Bluetooth name of peer device in Android?

how is it possible to get the Bluetooth information (name, Mac address,...) of the peer device that the android device is connected to that via Bluetooth ?

Upvotes: 3

Views: 3852

Answers (2)

Mtn
Mtn

Reputation: 1

I can't test this code at this moment but maybe can give an idea to how you can get the name and others parameters of bluetooth.

 static BluetoothSocket socket ;
 public static boolean btCon(Context ctx){

 Method m;
 try {
      BluetoothDevice devc = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(MAC_ADRS);

      m = devc.getClass().getMethod("createRfcommSocket", new Class[]{int.class});
      socket = (BluetoothSocket)m.invoke(devc, Integer.valueOf(1));
  socket.connect();

   String name = devc.getName();/* or */ String name2 = devc.getName().toString();
       Log.i("Test","Name: "+name); 
       Log.i("Test","Name 2: "+name2); 

  return true;
 }catch(Exception e)
 {
  return false;
 }
}

Upvotes: 0

Huy Tower
Huy Tower

Reputation: 7976

You can use the following code to get all remote devices :)

private void discoveryDevice(){
// Register the BroadcastReceiver
IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);

    registerReceiver(mReceiver, filter); // Don't forget to unregister during onDestroy

    mBluetoothAdapter.startDiscovery();
}

// Create a BroadcastReceiver for ACTION_FOUND
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        // When discovery finds a device
        if (BluetoothDevice.ACTION_FOUND.equals(action)) {
            // Get the BluetoothDevice object from the Intent
            BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);

            Log.d(TAG, "device " + device.getName() + "\n" + device.getAddress());
        }
    }
};

It's really good for you to get the name of remote device throught the code:

Log.d(TAG, "device " + device.getName() + "\n" + device.getAddress());

Upvotes: 1

Related Questions