如何在 Android Wear Emulator 上模拟来自心率传感器的数据?

How can I simulate datas from Heart Rate sensor on Android Wear Emulator?

如题,如何"simulate"从模拟器中模拟心率传感器的一些值?这在官方模拟器上是否可行,或者您知道一些可以执行此操作的替代模拟器吗?

不,你不能,android 模拟器不能模拟任何传感器。 Android Wear 模拟器也不行

为 2021 年更新此答案。使用当前的模拟器,您可以单击模拟器菜单中的“...”,然后导航到“虚拟传感器 -> 其他传感器”。这里可以移动心率滑块来控制。

找到心率虚拟传感器

如果您在 中描述的“其他传感器”下找不到心率传感器,您需要将下面这行添加到您的 AVD 的 config.ini 文件中。

hw.sensors.heart_rate=yes

对于 MacOS,config.ini 文件可以在这个路径找到:

/Users/{your user name}/.android/avd/{your AVD name}.avd/config.ini

包含权限:

您还需要请求 android.permission.BODY_SENSORS

This sensor requires permission android.permission.BODY_SENSORS. It will not be returned by SensorManager.getSensorsList nor SensorManager.getDefaultSensor if the application doesn't have this permission.

Source: Android Heart Rate Sensor documentation.

您可以使用以下方法做到这一点:

public void permissionRequest(){
    if (checkSelfPermission(Manifest.permission.BODY_SENSORS)
            != PackageManager.PERMISSION_GRANTED) {
        requestPermissions(
                new String[]{Manifest.permission.BODY_SENSORS},
                MY_PERMISSIONS_REQUEST_BODY_SENSOR);
    }
    else{
        Log.d(TAG,"ALREADY GRANTED");
    } 
}

OR you can enable it from Settings>Apps>YOUR_APP>Permissions>Sensor

Source: https://gist.github.com/mjohnsullivan/557c2f19ba177312b1d7?permalink_comment_id=2615046#gistcomment-2615046