En exécutant le code ci-dessous, ma tablette Galaxy (SCH-I905 - Android 4.0.4) détecte correctement trois services Bluetooth sur un PC. Exécution du même code sur un Galaxy Nexus - Android 4.2.2) trouve seulement l'un des services. Toutes les idées sont appréciées:Android Bluetooth Service de découverte donne des résultats différents sur deux appareils différents - est-ce la version Android?
private final BroadcastReceiver ServiceReceiver = new BroadcastReceiver()
{
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
if (BluetoothDevice.ACTION_UUID.equals(action))
{
BluetoothDevice device = intent.getParcelableExtra("android.bluetooth.device.extra.DEVICE");
Parcelable[] uuidExtra = intent.getParcelableArrayExtra("android.bluetooth.device.extra.UUID");
for(int i = 0; i < uuidExtra.length; i++)
{
Toast.makeText(this, device.getName() + ": " + uuidExtra[i].toString(), Toast.LENGTH_LONG).show();
}
}
}
};
Dans le débogueur Eclipse, le tableau suivant montre trois occurrences [00001000-0000-1000-8000-00805f9b34fb, 00001115-0000-1000-8000-00805f9b34fb, 00001202-0000-1000-8000-00805f9b34fb] pour la tablette, mais seulement [00001115-0000-1000-8000-00805f9b34fb] pour le Nexus. Je ne sais pas s'il s'agit d'un problème de version ou de matériel. Merci, John
Une dernière note - J'utilise ... BluetoothDevice device = intention.getParcelableExtra (BluetoothDevice.EXTRA_DEVICE); device.fetchUuidsWithSdp();