com.awareframework.ios.sensor.activityrecognition 0.5.2

com.awareframework.ios.sensor.activityrecognition 0.5.2

tetujinyuuki.nishiyama维护。



  • Yuuki Nishiyama

AWARE:活动识别

CI Status Version License Platform

Aware Activity Recognition (com.awareframework.ios.sensor.activityrecognition) 是 AWARE 框架的插件之一,AWARE 框架是一个开源的环境感知工具。这个插件允许我们管理由 iOS CMMotionActivityManager 提供的运动活动数据(如跑步、行走和汽车)。

需求

iOS 10 或更高版本

安装

com.aware.ios.sensor.activityrecognition 可以通过 CocoaPods 获取。

  1. 要安装它,请简单地添加以下行到您的 Podfile
pod 'com.aware.ios.sensor.activityrecognition'
  1. 在您的源代码中添加到 com_aware_ios_sensor_activityrecognition 库。
import com_aware_ios_sensor_activityrecognition
  1. 在 Info.plist 中添加对 NSMotionUsageDescription 的描述

公共函数

ActivityRecognitionSensor

  • init(config:ActivityRecognitionSensor.Config?) : 使用可选配置初始化活动识别传感器。
  • start(): 使用可选配置启动活动识别传感器。
  • stop(): 停止服务。

ActivityRecognitionSensor.Config

包含传感器配置的类。

Fields

  • sensorObserver: ActivityRecognitionObserver: 实时数据更新的回调。
  • interval: Int: 数据采样间隔(以分钟为单位)。(默认 = 10)
  • enabled: Boolean 传感器是否启用。 (默认 = false)
  • debug: Boolean 启用/禁用日志记录到 Logcat。 (默认 = false)
  • label: String 数据的标签。 (默认 = "")
  • deviceId: String 将与事件和传感器关联的设备ID。 (默认 = "")
  • dbEncryptionKey: String 数据库加密密钥。 (默认 = null)
  • dbType: Engine 用于保存数据的数据库引擎。 (默认 = Engine.DatabaseType.NONE)
  • dbPath: String 数据库路径。 (默认 = "aware_activityrecognition")
  • dbHost: String 数据库同步的主机。 (默认 = null)

Broadcasts

Fired Broadcasts

  • ActivityRecognitionSensor.ACTION_AWARE_ACTIVITYRECOGNITION:在周期结束时加速度计将数据保存到数据库后触发。

接收到的广播

  • ActivityRecognitionSensor.ACTION_AWARE_ACTIVITYRECOGNITION_START:收到启动传感器的广播。
  • ActivityRecognitionSensor.ACTION_AWARE_ACTIVITYRECOGNITION_STOP:收到停止传感器的广播。
  • ActivityRecognitionSensor.ACTION_AWARE_ACTIVITYRECOGNITION_SYNC:收到发送到主机的同步尝试的广播。
  • ActivityRecognitionSensor.ACTION_AWARE_ACTIVITYRECOGNITION_SET_LABEL:收到设置数据标签的广播。标签期望存在于 intent 的 extras 字段中的 ActivityRecognitionSensor.EXTRA_LABEL 中。

数据表示

活动识别数据

包含原始传感器数据。

字段 类型 描述
activities 字符串 检测到的活动的名称
confidence 整数 运动数据准确的置信度。(0=低,1=中,2=高)
stationary 布尔型 表示设备是否静止的布尔值。
walking 字符串 表示设备是否在行走的人身上的布尔值。
running 字符串 表示设备是否在跑步的人身上的布尔值。
automotive 字符串 表示设备是否在汽车上的布尔值。
cycling 字符串 表示设备是否在自行车上的布尔值。
unknown 字符串 表示运动类型是否为未知的布尔值。
label 字符串 可自定义的标签。对数据校准或追踪很有用。
deviceId 字符串 AWARE 设备 UUID
label 字符串 可自定义的标签。对数据校准或追踪很有用。
timestamp Int64 自1970年以来的 Unixtime 毫秒数
timezone 整数 设备所在的时区
os 字符串 设备的操作系统(例如 ios)

示例用法

let activitySensor = ActivityRecognitionSensor.init(ActivityRecognitionSensor.Config().apply{config in
    config.debug = true
    config.interval = 15
    config.dbType = .REALM
    config.sensorObserver = Observer()
})
activitySensor.start()
class Observer:ActivityRecognitionObserver {
    func onActivityChanged(data: Array<ActivityRecognitionData>) {
        // Your code here ..
    }
}

作者

Yuuki Nishiyama, [email protected]

相关链接

许可证

版权所有© 2021 AWARE移动上下文仪器中间件/框架(http://www.awareframework.com

遵循Apache许可证2.0版(“许可证”);除非遵守许可证,否则不得使用此文件。可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0除非适用于法律要求的或书面协议,否则根据许可证分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可证的权限和限制的具体内容,请参阅许可证。