我的目标是使用我的应用程序从健身手环Torntisc T1获取数据(脉冲),并独立处理手环的数据。
为了实现这一目标,我使用Xamarin,并找到一个Xamarin的蓝牙LE插件插件来连接设备并接收数据。然而,所有获取的特征都被称为“未知特征”,值为0字节。尽管它有5个服务,每个服务都有3个特征。其中1个服务中唯一的特征名称是:“设备名称”、“外观”和“外围首选连接参数”。然而,无论在哪里,值(value)都是0字节。如何获取特征?如何获取脉冲?
对于手环,有一个名为H Band 2.0的应用程序,它显示出相当多的手环设置,问题是它们都在哪里?
为了实现这一目标,我使用Xamarin,并找到一个Xamarin的蓝牙LE插件插件来连接设备并接收数据。然而,所有获取的特征都被称为“未知特征”,值为0字节。尽管它有5个服务,每个服务都有3个特征。其中1个服务中唯一的特征名称是:“设备名称”、“外观”和“外围首选连接参数”。然而,无论在哪里,值(value)都是0字节。如何获取特征?如何获取脉冲?
对于手环,有一个名为H Band 2.0的应用程序,它显示出相当多的手环设置,问题是它们都在哪里?
本地应用程序 H Band 2.0。尝试反编译 此处。我发现以下目录中负责连接的类:sources\no\nordicsemi\android\dfu。我通过BluetoothGatt看到了已完成的工作。不幸的是,我不是java和android的专家,对这个库不熟悉。我没有找到任何与“脉冲”有关的方法或内容,但发现了大量神秘解析特征:parse (characteristic)
foreach (var TestService in Services)
{
var characteristics = await TestService.GetCharacteristicsAsync();
foreach (var Characteristic in characteristics)
{
var properties = Characteristic.Properties;
var name = Characteristic.Name;
var serv = Characteristic.Service;
var value = Characteristic.Value;
var stringValue = value.ToString();
string result = "";
if (value.Length != 0)
result = System.Text.Encoding.UTF8.GetString(value, 0, value.Length - 1);
}
}