取消对活动识别(android)的所有请求
我遇到了一个奇怪的情况,之前我创建了一个等待活动识别更新的意图取消对活动识别(android)的所有请求,android,activity-recognition,Android,Activity Recognition,我遇到了一个奇怪的情况,之前我创建了一个等待活动识别更新的意图 PendingIntent pendingIntent = PendingIntent.getService(mContext, getIntentID(), intent, PendingIntent.FLAG_UPDATE_CURRENT); 我的getIntentID代码是 private static int getIntentID(){ if(intentID == 0)
PendingIntent pendingIntent = PendingIntent.getService(mContext, getIntentID(), intent,
PendingIntent.FLAG_UPDATE_CURRENT);
我的getIntentID代码是
private static int getIntentID(){
if(intentID == 0)
return intentID = (int)(System.currentTimeMillis());
return intentID;
}
我这样做是因为我想确保每次我停止和启动服务时id都是唯一的
然而,现在当我在我的intentService中阅读正在发送的活动时,我很确定这不是我最近的挂起电话请求。我相信这是从上一个。但是我不知道如何取消它,因为我不知道上一个的id。
1.为什么我不知道以前的身份证?当我通过删除更新取消更新时,我确实使用了getIntentID,我认为它工作正常。但是当我停止我的应用程序,再次启动它,但没有启动活动识别的update()代码时,我注意到在使用调试器时,我仍然在获取活动
这是我的更新请求
ActivityRecognition.ActivityRecognitionApi.requestActivityUpdates(getActivityRecognitionClient(),
Utility.DETECTION_INTERVAL_TIME, pendingIntent())
这是我的删除代码
ActivityRecognition.ActivityRecognitionApi.removeActivityUpdates(getActivityRecognitionClient(),
pendingIntent())
所以我的问题是,有没有办法取消活动记录期间的所有通话。即使我不知道悬而未决的信息
所以我的问题是,有没有一种方法可以取消所有通话
活动记录
如果您参考ActivityRecognitionApi
的API
,它只包含两种方法
一个用于请求更新
requestActivityUpdates(GoogleApiClient client, long detectionIntervalMillis, PendingIntent callbackIntent)
及
第二个是删除更新
removeActivityUpdates(GoogleApiClient client, PendingIntent callbackIntent)
这两种方法都需要pendingent
所以答案显然是否定的
希望这对你有帮助
所以我的问题是,有没有一种方法可以取消所有通话
活动记录
如果您参考ActivityRecognitionApi
的API
,它只包含两种方法
一个用于请求更新
requestActivityUpdates(GoogleApiClient client, long detectionIntervalMillis, PendingIntent callbackIntent)
及
第二个是删除更新
removeActivityUpdates(GoogleApiClient client, PendingIntent callbackIntent)
这两种方法都需要pendingent
所以答案显然是否定的
希望这会对您有所帮助。好的,似乎没有办法取消活动记录的挂起意图。然而,正如Nag所说,我最终做的是更改我的intentservice类的名称并使用它,并跟踪挂起的Id信息。现在我没有收到任何来自以前电话的请求好的,似乎没有办法取消活动记录的挂起意图。然而,正如Nag所说,我最终做的是更改我的intentservice类的名称并使用它,并跟踪挂起的Id信息。现在我没有收到以前电话的任何请求