2017-08-21 2 views
1

Je développe une application dans laquelle je dois obtenir les calories brûlées à partir d'appareils BLE comme Mio-Fuse. Je suis capable d'aller chercher des données à partir du kit de santé d'Apple Watch, mais quand il s'agit de BLE wearable sans API, je ne suis pas en mesure de traquer l'ID de service ou les caractéristiques id.So bien m'aider.Obtenir des calories de brûlure à partir d'appareils BLE ouverts

Merci à l'avance

+0

Toute aide est appréciée. –

+0

Avez-vous un UDID correct pour obtenir les caractéristiques iD. Seulement vous avez des caractéristiques ID puis vous pouvez rechercher un service. – cole

+0

Etes-vous sûr que la spécification de l'appareil présente une caractéristique pour les calories brûlées? – Andrea

Répondre

1

Vous devez envoyer votre code pour obtenir de l'aide. Regardez d'abord pour votre appareil - Le code est obj c mais vous devriez être facilement en mesure de changer en conséquence pour rapidement

if (central.state == CBCentralManagerStatePoweredOn) { 
    [_centralManager scanForPeripheralsWithServices:@[[CBUUID UUIDWithString:@"0x180A"]] options:@{CBCentralManagerScanOptionAllowDuplicatesKey : @YES}]; 
    NSLog(@"Start scanning"); 
} 

Si elle réussit, alors regardez les caractéristiques comme celui-ci

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI { 

for (CBService *service in peripheral.services) { 
    NSLog(@"Discovered service1: %@", service.UUID); 
    [peripheral discoverCharacteristics:nil forService:service]; 
} 
if (_discoveredPeripheral != peripheral) { 
    // Save a local copy of the peripheral, so CoreBluetooth doesn't get rid of it 
    _discoveredPeripheral = peripheral; 

    // And connect 
    NSLog(@"Connecting to peripheral %@", peripheral); 
    [_centralManager connectPeripheral:peripheral options:nil]; 
} 
} 

Une fois que vous vous connectez alors vous obtiendrez des caractéristiques

+0

Tout problème avec le code. Faites le moi savoir ? – cole

+0

tout fonctionne bien. Je suis en mesure d'obtenir le niveau de la batterie, la fréquence cardiaque et le nom du fabricant aussi, mais je ne reçois pas l'ID de service et ses caractéristiques pour obtenir des calories brûlées. https://www.bluetooth.com/specifications/gatt/services Veuillez vérifier ce lien. Je ne reçois aucun identifiant de service pour obtenir de l'énergie active ou de l'énergie brûlée. –

+0

Vous devez poster votre code. Mais seul le problème semble UDID pour cette partie les caractéristiques sont fausses. Pour les autres caractéristiques, vous devez ajouter UDID de la même manière. Si c'est 100% correct alors vous devez vérifier si elle est lisible ou vous devez faire quelque chose avant de pouvoir lire ou écrire à ces caractéristiques – cole