我试过取葡萄糖值,借助这篇文章,我知道freestyle liber有趋势记录(8hr)和历史记录(24hr)会携带葡萄糖。我已经搜索了 android 和 flutter 来获取葡萄糖值形式的 freestyle liber,然后得到了一些 GitHub 链接作为下面的参考列表
根据上面的 GitHub 参考,我创建了这个方法,但葡萄糖值高于 1000
我们需要70到240的葡萄糖值
List getHistoryData(memoryDatafromNFC) {
List result = [];
int watchTime = DateTime.now().millisecondsSinceEpoch;
int indexTrend = memoryDatafromNFC[26];
int sensorTime = 256 * (memoryDatafromNFC[317]) + (memoryDatafromNFC[316]);
int sensorStartTime = watchTime - sensorTime * 60000;
for (int index = 0; index < 32; index++) {
int i = indexTrend - index - 1;
if (i < 0) i += 32;
int time = [0, (((sensorTime - 3) / 15).abs() * 15 - index * 15).round()]
.reduce(max);
DateTime readTime =
DateTime.fromMillisecondsSinceEpoch(sensorStartTime + time * 60000);
result.add(
{
"timeStamp":DateTime(readTime.year, readTime.month, readTime.day, readTime.hour,
readTime.minute),
"glucoseValue":getGlucoseValue(
memoryDatafromNFC[(i * 6 + 125)],
memoryDatafromNFC[(i * 6 + 124)],
),
}
);
}
return result;
}
double getGlucoseValue(int fstByte, int sndByte) {
return (((256 * fstByte) + (sndByte)) & 0x0FFF) / 1;
}