Kommunizieren zwischen iOS und Android mit Bluetooth LE

Ich habe eine funktionierende app mit CoreBluetooth für die Kommunikation zwischen einem iPad (Mitte) und iPhone (Peripherie). Ich habe einen Dienst, der hat zwei Eigenschaften. Ich habe ein Nexus 7 mit der neuesten Android 4.3 mit BTLE support. Android ist ein bisschen spät, um zu springen auf die BTLE Zug, aber es scheint, Sie nähern es ähnlich wie iOS haben, wo Sie zunächst nur unterstützen, als eine der zentralen mit den peripheren Modus kommt in einer späteren version. Ich kann laden Sie die Beispiel-Android-app BTLE und suchen in der Nähe von Peripheriegeräten. Mit meinem iPhone Werbung als peripheres ich kann sehen, dass der Wert von CBAdvertisementDataLocalNameKey in der Liste der nahe gelegenen Peripherie auf der Android-Seite. Ich kann eine Verbindung zu dem iPhone und dem Bluetooth-symbol ändert sich von hellgrau zu schwarz, wenn die Verbindung hergestellt wird. Die Verbindung dauert immer genau 10 Sekunden und trennt anschließend die Verbindung. Auf der Android Seite bin ich eigentlich, um eine Liste der verfügbaren Dienste und die Eigenschaften erscheinen sofort nach Anschluss. Ich habe bewiesen, der Android code ist richtig eingestellt, denn ich kann connnect es die TI CC2541DK-SENSOR-hardware, die ich habe und alle Leistungen und Merkmale aufgeführt sind, auf die Verbindung zu es.

Ich habe in den letzten paar Tagen das Problem Problembehandlung ohne Erfolg. Das problem ist ich kann nicht bestimmen, welches Gerät ist ein Fehler aufgetreten, und so verursacht die Trennung. Es gibt keine Rückrufe von CBPeripheralManagerDelegate während der phase der Verbindung oder service-discovery-phase, also habe ich keine Idee, an welcher Stelle ein Fehler Auftritt (wenn der Fehler auf der iOS-Seite). Auf der Android-Seite eine Methode aufgerufen wird, zu initiieren, service discovery jedoch Ihre callback "onServicesDiscovered" wird nie aufgerufen, die verwirrend ist. Gibt es eine Möglichkeit, ich kann das Graben in den Eingeweiden der BTLE Kommunikation auf dem iOS-Seite, um zu sehen, was Los ist, und bestimmen, welche Fehler stattfindet?

InformationsquelleAutor der Frage afrederick | 2013-08-23

Schreibe einen Kommentar