正如标题中所描述的,我的问题是无法正确控制活动识别请求。我的代码如下:
arclient.requestActivityUpdates(ACTIVITY_DETECT_INTERVAL, pIntent);
ACTIVITY_DETECT_INTERVAL =2*60*1000 (2分钟),
但日志显示
01-27 12:21:49.412: I/ActivityRecognitionService(5458): Still 92
01-27 12:21:54.462: I/ActivityRecognitionService(5458): Still 92
01-27 12:21:59.492: I/ActivityRecognitionService(5458): Still 69
01-27 12:22:04.562: I/ActivityRecognitionService(5458): Still 76
01-27 12:22:09.662: I/ActivityRecognitionService(5458): Still 76
01-27 12:22:14.592: I/ActivityRecognitionService(5458): Still 92
01-27 12:22:19.612: I/ActivityRecognitionService(5458): Still 77
01-27 12:22:24.622: I/ActivityRecognitionService(5458): Still 92
01-27 12:22:29.672: I/ActivityRecognitionService(5458): Still 92
01-27 12:22:34.892: I/ActivityRecognitionService(5458): Still 85
01-27 12:22:39.812: I/ActivityRecognitionService(5458): Still 92
结果发现间隔总是5秒。谁能帮我个忙,谢谢你。
发布于 2014-01-27 04:54:11
如果另一个应用程序也以更快的速度请求活动更新,则可能比detectionIntervalMillis参数更频繁地接收活动。当活动检测服务接收到当前活动可能改变的信号时,它还可以更快地接收更新,例如,如果设备已经停留了很长一段时间,然后从电话充电器上拔出电源。
当然,您可以在自己的应用程序中过滤掉事件(假设您存储上一次收到事件时,然后忽略事件在该时间之后的2分钟),但是除了手机请求或请求中最耗电的应用程序之外,没有办法限制传入的活动更新量,不管是什么更大的。
https://stackoverflow.com/questions/21373107
复制相似问题