Verbindung zu einem bestimmten HID-Profil-Bluetooth-Gerät

Ich verbinde einen Bluetooth-Barcodescanner mit meinem Android-Tablet. Barcode-Scanner ist mit Android-Gerät als Eingabegerät verbunden - HID-Profil. Es wird als Tastatur oder Maus im Bluetooth-Manager des Systems angezeigt. Ich entdeckte, dass Bluetooth-Profil-Eingabegerät-Klasse existieren, aber versteckt ist. Klassen- und BTprofile-Konstanten haben @hide-Annotaions in Android-Dokumenten.

versteckte Klasse:

http: //grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.3.1_r1/android/bluetooth/BluetoothInputDevice.jav

hier sollten sie auch 3 andere Konstanten sein

developer.android.com / reference / android / bluetooth / BluetoothProfile.html # HEADSET

so wi

public static final int INPUT_DEVICE = 4;
public static final int PAN = 5;
public static final int PBAP = 6;

diese Konstanten sind durch Reflektion einfach zugänglich. Was ich erreichen muss, ist eine Liste der Geräte nach verstecktem Profil (INPUT_DEVICE). es sollte einfach sein mit kleinen Änderungen mit der Methode:

developer.android.com / reference / android / bluetooth / BluetoothA2dp.html # getConnectedDevices ()

nicht für das A2dp-Profil, sondern für das versteckte Profil, auf das auch durch Reflektionsmethoden zugegriffen wird. trauri

Class c = Class.forName("android.bluetooth.BluetoothInputDevice")

wird nicht funktionieren .. irgendwelche Ideen, wie ich an das Problem herangehen soll? Ich brauche nur Liste der versteckten Geräte

Antworten auf die Frage(1)

Ihre Antwort auf die Frage