Android活动识别无法正常工作

Android活动识别无法正常工作,android,android-activity,google-play-services,activity-recognition,Android,Android Activity,Google Play Services,Activity Recognition,您好,我正在开发android应用程序,我正在使用活动识别。我下载了谷歌的活动识别示例应用程序。它工作正常,没有任何错误。但我的主要问题是以下顺序: 我安装该应用程序并启动活动识别。 在不停止该服务的情况下,我卸载了hat应用程序。 我再次安装相同的应用程序。我的应用程序未经我的请求就开始侦听活动识别 所以我想知道它是如何工作的。卸载我的应用程序后继续该服务的原因。下次它开始监听活动结果时 我错过了什么吗。还是做错了什么 需要帮助,谢谢 听起来你并没有停止倾听,因为你有识别的意图 要停止收听这些

您好,我正在开发android应用程序,我正在使用活动识别。我下载了谷歌的活动识别示例应用程序。它工作正常,没有任何错误。但我的主要问题是以下顺序:

我安装该应用程序并启动活动识别。 在不停止该服务的情况下,我卸载了hat应用程序。 我再次安装相同的应用程序。我的应用程序未经我的请求就开始侦听活动识别

所以我想知道它是如何工作的。卸载我的应用程序后继续该服务的原因。下次它开始监听活动结果时

我错过了什么吗。还是做错了什么


需要帮助,谢谢

听起来你并没有停止倾听,因为你有识别的意图

要停止收听这些内容,您需要确保您正在拨打:

yourActivityRecognitionClient.removeActivityUpdates(youtActivityRecognitionIntent);

将上述内容放入onDestroy()函数中,它应该停止侦听停止服务的意图。

您还应该使用PendingEvent取消PendingEvent。cancel()

我想在后台继续。所以我不想阻止它。但是,如果我再次卸载并安装我的应用程序,它将如何继续。我必须在用户卸载我的应用程序时停止它,或者在安装后我必须检查它是否正在运行,然后停止那个时间。。。因此,它是活动检测的正确行为。为什么在重新安装应用程序后不调用start listen就开始侦听。。。。需要帮助感谢您的重播…我的理解是,活动识别一旦注册更新,将继续查找更新,直到其未注册,即使您的应用程序未运行。卸载应用程序将删除您的代码,因此它不应触发任何侦听活动更新的操作,但除非停止,否则我认为您的客户端仍将在内存中尝试获取更新。哦,那么如何解决此问题?有没有办法做到这一点。至少有任何方法可以在首次加载时检查它是否正在运行。在服务中记录一个布尔值,说明活动识别正在运行,然后在应用程序启动/安装时启动该服务(这将触发OnStart命令,并在其中检查活动识别是否正在运行,然后执行所需的其他操作。