我尝试从手环读取加速度计值,即使
- 手机已锁定
- 应用没有焦点
在应用获得焦点时读取值效果很好。 但是,如果我按下“Windows”按钮并在其他应用程序上工作,则不会再触发任何 ChangedEventArgs。
我想收集一整天的加速度计和陀螺仪数据,以确定佩戴手环的用户在做什么。 (吃喝等模式识别)
这是否可以使用默认的 Microsoft.Band SDK?
我的代码
IBandInfo[] pairedBands = await BandClientManager.Instance.GetBandsAsync();
IBandClient bandClient = await BandClientManager.Instance.ConnectAsync(pairedBands[0]);
if (bandClient.SensorManager.HeartRate.GetCurrentUserConsent() != UserConsent.Granted)
{
await bandClient.SensorManager.Gyroscope.RequestUserConsentAsync();
}
bandClient.SensorManager.Gyroscope.ReadingChanged += Gyroscope_ReadingChanged;
await bandClient.SensorManager.Gyroscope.StartReadingsAsync();
最佳答案
除了使用 TimeTrigger 后台任务,您还可以探索 DeviceUseTrigger 以获得与 band 的“近乎永久”连接。虽然我自己还没有尝试过,但下面的文章详细介绍了必要的步骤。考虑到您的要求,我认为这是一种可行的方法?
http://www.codeproject.com/Tips/1036512/Achieveing-Indefinite-Background-Execution-with-th
关于c# - MS Band 继续在锁屏上读取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36849684/