Stap 4: Hoe het werkt: Android
Laten we in de good stuff: Android programmering. Het is een complexer beetje, voor een goede reden: in plaats van eenvoudig verzenden en ontvangen van functies, hebt u meer controle over hoe de gegevens wordt behandeld.
Functies:
setScanning: Deze functie controleert dat we zijn niet scannen of reeds aangesloten, dan de bluetoothAdapter.startLeScan roept.
scanCallback.onLeScan : Dit wordt aangeroepen wanneer de LE-scan een apparaat ontdekt. Er wordt gecontroleerd of het apparaat overeenkomt met, en wenst dat sluit als het doet.
verbinding: Hiermee worden gecontroleerd dat de vereiste objecten zijn geïnstantieerd en bluetoothGatt verbinding maakt met het apparaat.
statusReceiver/responseReceiver/updateStatusIntent/updateResponseIntent : De scanCallback en de gattCallback optreden in hun eigen draden, zodat ze niet kunnen rechtstreeks met de UI communiceren. In plaats daarvan uitzenden we bedoelingen de verbindingsstatus en RFduino reactie op het scherm bijwerken.
gattCallback.onConnectionStateChange : Vrij duidelijk, dit heet als de verbindingsstatus wordt gewijzigd. De variabele connectionState en onze UI bijgewerkt.
gattCallback. onServicesDiscovered: Dit heet als diensten worden ontdekt op een aangesloten Bluetooth-apparaat. Het vindt de kenmerken noodzaak om te communiceren met de RFduino en slaat ze voor later gebruik.
gattCallback. onCharacteristicRead: Dit heet bij het lezen van een Bluetooth-apparaat. In het echo-programma, wordt het de lees waarde aan de goede textview afgedrukt.
writeDataToCharacteristic: Dit schrijft de gegevens in de edittext naar de RFduino.
readDataFromCharacteristic: Dit leest de gegevens van de RFduino.