2016-04-21 14 views
0

Ich erstelle kleine Bluetooth Messenger App. Ich habe 2 Aktivitäten Hauptaktivität und Messenger-Aktivität. Hauptaktivität haben Hintergrund Threads zum Erstellen von Bluetooth-Socket und Verwalten der Verbindung. Wenn der Socket erstellt wird, startet er die Messenger-Aktivität auf beiden Geräten. Messenger-Aktivität haben Bearbeitungsfeld, Listenansicht und Schaltfläche. Frage ist, wie kann ich Zeichenfolge senden, die von Bearbeitungsfeld zu Write() -Funktion in Main Activity genommen wurde.So senden Sie Daten von einer Aktivität an eine andere. (Bluetooth)

Wenn das Gerät eine Nachricht erhält, sendet es einen Puffer an Handler.

buffer = new byte[1024]; 
       bytes = mmInStream.read(buffer); 
       // Send the obtained bytes to the UI activity 
       mHandler.obtainMessage(MESSAGE_READ, bytes, -1, buffer) 
         .sendToTarget(); 

Handler als nimmt Zeichenfolge aus dem Puffer. Und hier ist eine andere Frage: Wie Sie diese Zeichenfolge an die Messenger-Aktivität senden, um sie der Listenansicht hinzuzufügen.

Antwort

0

Ich bin nicht sicher, ob ich vollkommen verstanden - aber ich hoffe, es hilft:

Vielleicht sollten Sie Ihre Bluetooth-socket-Material in einem Dienst zu tun, die Sie und Ihre Messenger-Aktivität (lesen http://developer.android.com/reference/android/app/Service.html beginnen; -))

+0

Ja das könnte funktionieren. Atm Ich versuche nicht, viel von meinem Code zu ändern. Weil mein Code bereits durcheinander ist: P. Und ich muss dieses Projekt in den nächsten 24 Stunden beenden. Wenn ich eine Nachricht aus der Messenger-Aktivität sende, geht es zur Hauptaktivität und es gelangt zum angeschlossenen Gerät. Problem ist, dass ich diese Nachricht von MainActivty nicht zurück zu Messenger-Aktivität abrufen und sie der Listenansicht hinzufügen kann. – Nikola

Verwandte Themen