问题标签 [activity-recognition]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 当手机进入待机状态时,活动识别停止接收更新(屏幕关闭状态)
我在活动识别方面遇到了一些问题。我已经在一个应用程序中实现了它,当设备的屏幕打开时它工作正常。我的活动识别意图服务类中有一个日志条目,我可以看到它何时获得更新。所以,我知道它在屏幕打开时工作正常。
但是在手机进入待机状态(屏幕关闭)后,它会停止检测用户活动。
DetectionRequester 类中的 onDisconnected() 没有被调用,我使用日志帖子进行了检查。
我的问题:为什么我的应用程序在设备进入待机模式后停止跟踪使用活动?以及如何使它不停止检测用户活动?
如果您需要查看任何代码或需要有关我的应用程序的更多详细信息,请告诉我。
我的 MainActivity 类中的相关代码。这是应用程序开始请求 ActivityRecognition 的地方。
我的 DetectionRequester 类:
}
意向服务:
java - 用户运动检测应用程序不断崩溃
我一直在开发这个应用程序。它只是不会执行。每次都崩溃。请帮助。
AndroidManifest.xml
用户运动服务.java
MainActivity.java
日志猫:
我已经包含了必要的权限,并且代码中没有错误。但是它显示“不幸的是,UserMotion 已停止”。请帮忙。
android - 活动识别 Google API 搞砸了旋转矢量传感器读数
尝试将旋转矢量传感器与新的位置和活动识别 Google API 一起使用时遇到问题。我正在使用旋转矢量来确定设备的方向。
使用 API 之前:旋转矢量在使用新的 Google API 之前可以正常工作。
使用 API 后:旋转矢量传感器的读数对于前几个读数(大约 5 个)似乎很好,然后读数保持不变(即不改变)并且只报告相同的值。根据我的观察,似乎 API(很可能是活动识别)正在影响旋转矢量读数。
有谁知道这个问题?或如何解决?
android - 可穿戴设备上的 Android 活动识别
我正在研究如何使用安卓智能手表进行活动识别。目前,我专注于检测用户是在行走还是静止不动。我的第一个想法是使用内置的计步器,但后来我遇到了 Android Activity Recognition API(我对 Android 比较陌生^^),它似乎只用于移动应用程序。
我现在坚持回答以下问题:
- 当前的 API 是否已经在使用连接的可穿戴设备?(例如自动访问内置的可穿戴传感器)
- 是否有可用于 Android Wear 的单独 API?
- 关于如何使用可穿戴设备进行活动识别,还有其他最佳实践吗?(尤其是走路和站着不动)
在我的研究中,我已经尝试过以下事情:
- 通读 Android Activity Recognition Guide
- 通读这篇关于 Google 的 Activity Recognition API 的文章
- 实现一个使用当前 Activity Recognition API 的简单 Android Wear 应用程序。我在我的 LG G Watch 上测试了该应用程序,但没有成功。似乎我可以连接到 ActivityRecognitionClient 但我从未收到任何活动更新。我在 Nexus 5 上尝试了相同的代码 - 一切正常。
- 通读这篇关于 Google Play 服务的文章。在这里,作者就像“......我们喜欢Android Wear的 Activity Recognition API ,因为我们一直认为位置跟踪技术是此类功能的重要支柱......”。所以根据这个,有一个单独的API,对吧?
我将非常感谢你们提供的任何有用信息。在我看来,一件很酷的事情(见第一个问题)是在手机不确定当前用户的活动时自动检测连接的可穿戴设备并使用其传感器来提高准确性。
android - 如何使用 com.google.android.gms.common.api.GoogleApiClient 而不是 ActivityRecognitionClient 在 android 中请求 ActivityUpdates?
这里的座右铭是当我使用 GoogleApiClient 的 ActivityRecognition.ActivityRecognitionApi 说 requestActivityUpdates() 时调用服务“ActivityTrackerService”,如下面的代码所示,当调用 googleApiClient.connect() 时。连接 api 后,onConnected 回调执行并请求活动更新。代码运行得非常好,因为在结果回调中我获得了成功。但是有些服务类 onHandleIntent 没有被调用。我不确定该服务是否已开始工作。
服务提供者类:
服务等级:
具体的android manifest条目如下:
有没有人尝试使用 com.google.android.gms.common.api.GoogleApiClient 使用 ActivityRecognition.ActivityRecognitionApi.requestActivityUpdates 请求 ActivityUpdates 或者是否有其他方法可以使用 GoogleApiClient 请求活动更新?
android - 为什么 ActivityRecognitionApi 中的 requestActivityUpdates() 需要在调用时连接现有的 GoogleApiClient?
要使用 Google Play 服务,您需要与 Google 建立联系。例如,我知道 FusedProviderApi 可能会扫描 WiFi AP 或蜂窝塔 ID,然后将它们发送给 Google 以进行咀嚼并输出位置。但是这种活动检测应该不会很麻烦,那么发生了什么?这就是他们所说的:
“通过定期唤醒设备并读取传感器数据的短脉冲来检测活动。它仅使用低功耗传感器以将功耗保持在最低水平。例如,它可以检测用户当前是否处于开机状态脚,在车里,在自行车上或静止不动。”
他们是否也需要咀嚼服务器中的低功耗(加速度计/磁力计/陀螺仪)传感器数据?还是他们只是收集这些信息来建立一些众包模型?即使我当时没有连接到他们的服务器,我可以检测到活动吗?或者它会存储定期进行的测量,直到它连接到他们的服务器?有没有人试过这个?
编辑:经过测试,我发现 .connect() 调用,尽管它的语义,并不一定要连接到任何东西,因为你可以在没有互联网连接的情况下执行它。这种方法(和 onConnect() 回调)让我认为如果不是这种情况,就必须建立与他们服务器的连接。将 cYrixmorten 的答案标记为正确。
android - 退出应用程序后如何停止活动识别?
我正在开发一个用户活动跟踪应用程序。即使应用程序处于后台或退出状态,我也需要跟踪用户活动。
我已经开始用户活动跟踪并退出应用程序。一段时间后,我想停止用户活动跟踪。现在该应用程序没有任何实例。我没有任何实例可以停止用户活动跟踪。
从我最近的应用程序中删除应用程序后,所有静态引用都被清除。一切正常。但我不知道如何在应用退出后一段时间停止用户活动跟踪。
我想知道当我在后台时如何阻止这种情况。因为一旦应用退出,我就没有任何实例可以阻止它。
请帮助我。提前致谢。
android - Android Studio 中导入的项目无法解析 ActivityRecognitionClient
我将一个项目从 Eclipse 导入到 Android Studio。它使用活动识别和定位服务。现在,这个 Android Studio 项目可以解决:
1) GooglePlayServicesClient (com.google.android.gms.common.GooglePlayServicesClient) 甚至
2) DetectedActivity (com.google.android.gms.location.DetectedActivity)
但无法解析 ActivityRecognitionClient (com.google.android.gms.location.ActivityRecognitionClient)。
可能是什么问题?
android - 活动识别 - 如何使用它
我正在寻找一种解决方案来保护我的“基于位置的应用程序”中的电池。我有一个关于 Activity Recognition 的问题,它为 Android 提供了 Google。实际上我遇到的问题是我的手机只有在手机唤醒时才能识别我当前的“活动”。当屏幕关闭时,识别不起作用。解锁手机(屏幕打开)后,识别恢复。这正常吗?我无法想象,因为 API 提供了诸如“骑自行车”之类的活动——谁在骑自行车时打开了屏幕?!
有没有其他好的方法来检查是否有人在开车?是否可以使用其他传感器(如加速度计)?请告诉我。我很感激每一个小建议。
提前致谢。
android - 三星设备的 Google Play 服务版本奇怪,无法正常工作
我正在使用 Google Play 服务中提供的 Activity Recognition API。我尝试在 Android 4+ 和 Android 5+ 上使用 Google Play Services 5+ 和 Google Play Services 6+(使用带有 GoogleApiClient 的新 API)。除了三星 Galaxy Note 4(2014 年 9 月发布)(无法在其他三星设备上测试)之外,一切都在不同类型的设备上运行良好。问题是:
- 三星 Galaxy Note 4 有 Google Play Services 5.0.89(目前最新版本是 6.5.99)(无法更新)
- Activity Recognition API不起作用(它可用,只是不会触发所需的识别事件)
有没有人在任何三星设备上遇到过类似的问题?如何解决?谢谢。