UUID des Obex-Push-Profils

Ich versuche, einen Socket zu öffnen, um auf eingehende Verbindungen von einem Nicht-Android-Gerät zu warten.

 Parcelable[] uuidExtra = device.getUuids(); 
 String t = uuidExtra[0].toString(); 
 t = t.toUpperCase();
 Log.i("UUID: ", t);

Dieser Codesnippet gibt mir die UUID des von meinem Bluetooth-Gerät bereitgestellten Dienstes. Die Ausgabe von LogCat ist:

00001105-0000-1000-8000-00805F9B34FB

Was ich glaube, ist die UUID des Obex Object Push-Profils. Ich gehe davon aus, weil mir der Hersteller des Geräts mitteilte, dass das Gerät nur das folgende Protokoll unterstützt: Obex Push Profile.

Wenn ich versuche, zum Beispiel auf das zweite Element in meinem zuzugreifenParcelable[] Array wird die Ausgabe nur sein

07-12 13:29:36.305: E/AndroidRuntime(6293): java.lang.ArrayIndexOutOfBoundsException: length=1; index=1

Damit kann ich sicher sagen, dass mein Array nur enthältein Objekt.

Also rüber zu mehr Android-spezifischen Bluetooth-Sachen.

Ich benutze diese UUID folgendermaßen:

 try {
       tmp = adapter.listenUsingRfcommWithServiceRecord(device.getName(), UUID.fromString(t));
      } catch (IOException e) {
           Log.e(TAG, "FAILED BECAUSE: " + e.getMessage()); } 

Die Ausnahme gibt Folgendes an LogCat aus:

FAILED BECAUSE: Not able to register SDP record for: "name of the device" 

Nach ein paar Stunden, in denen ich diese Ausnahme google, kann ich immer noch nicht herausfinden, wie ich eine Hörbuchse für mein Gerät öffnen kann.

Irgendwelche Vorschläge? Danke im Voraus!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage