有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java有可能知道穿戴设备是否在手腕上吗?

我想知道是否有可能知道穿戴设备是否在手上。 我需要运行一个服务,只有当它在手上时,它才会记录脉搏,如果它没有,那么它应该停止服务,并在它在手上时再次启动


共 (2) 个答案

  1. # 1 楼答案

    你可以尝试使用心率传感器

    public class MainActivity extends WearableActivity implements SensorEventListener {
    
        private static final String TAG = "MainActivity";
        private TextView mTextViewHeart;
        SensorManager mSensorManager;
        Sensor mHeartRateSensor;
        SensorEventListener sensorEventListener;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            mTextViewHeart = (TextView) findViewById(R.id.heart);
            mSensorManager = ((SensorManager) getSystemService(SENSOR_SERVICE));
            mHeartRateSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_HEART_RATE);
            mSensorManager.registerListener(this, mHeartRateSensor, SensorManager.SENSOR_DELAY_NORMAL);
            Log.i(TAG, "LISTENER REGISTERED.");
            mTextViewHeart.setText("Something here");
    
    
            mSensorManager.registerListener(sensorEventListener, mHeartRateSensor, mSensorManager.SENSOR_DELAY_FASTEST);
        }
    
    
        public void onResume(){
            super.onResume();
        }
    
        public void onAccuracyChanged(Sensor sensor, int accuracy) {
            Log.d(TAG, "onAccuracyChanged - accuracy: " + accuracy);
        }
    
        public void onSensorChanged(SensorEvent event) {
            if (event.sensor.getType() == Sensor.TYPE_HEART_RATE) {
                String msg = "" + (int)event.values[0];
                mTextViewHeart.setText(msg);
                Log.d(TAG, msg);
            }
            else
                Log.d(TAG, "Unknown sensor type");
        }
    
    }
    
  2. # 2 楼答案

    某些设备(如microsoft band 2)有专门用于检测设备是否磨损的传感器。根据项目,您可以考虑开发该设备