我正在开发用户活动跟踪应用程序。即使应用程序是后台或退出,我也需要跟踪用户活动。
我已启动用户活动跟踪并退出应用。在一段时间后,我想停止用户活动跟踪。现在该应用程序没有任何实例。我没有任何实例可以停止用户活动跟踪。
从我最近的应用程序中删除应用程序后清除所有静态引用。 一切正常。但我不知道如何在应用程序退出后停止用户活动跟踪一段时间。
/**
* Make the actual update request. This is called from onConnected().
*/
private void continueRequestActivityUpdates() {
/*
* Request updates, using the default detection interval. The
* PendingIntent sends updates to ActivityRecognitionIntentService
*/
getActivityRecognitionClient().requestActivityUpdates(
Constants.DETECTION_INTERVAL_MILLISECONDS,
createRequestPendingIntent());
}
我想知道当我在后台时如何阻止这个。因为一旦应用程序退出,我没有任何实例来阻止它。
请帮我解决这个问题。提前致谢。
答案 0 :(得分:0)
要停止活动识别更新,请使用您用于请求更新的相同模式,但调用removeActivityUpdates()而不是requestActivityUpdates()。 从这里开始:link
在同一个类中实现此方法,并在每次要删除更新时调用它:
private void removeActivityUpdates() {
mActivityRecognitionClient = new ActivityRecognitionClient(mContext, this, this);
Intent intent = new Intent(mContext, ActivityRecognitionIntentService.class);
mActivityRecognitionPendingIntent = PendingIntent.getService(mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
mActivityRecognitionClient.removeActivityUpdates(mActivityRecognitionPendingIntent);
}