2
有沒有辦法檢測「手腕傾斜屏幕喚醒」行動手錶表面處於活動狀態?我希望我的錶盤能夠檢測到此動作,以便通過再次傾斜手錶來延遲屏幕超時(作爲示例)。Android Wear檢測手錶在臉上傾斜/ app
有沒有辦法檢測「手腕傾斜屏幕喚醒」行動手錶表面處於活動狀態?我希望我的錶盤能夠檢測到此動作,以便通過再次傾斜手錶來延遲屏幕超時(作爲示例)。Android Wear檢測手錶在臉上傾斜/ app
大多數基於Android的設備都具有內置傳感器,可以測量運動,方向和各種環境條件。這些傳感器能夠以高精度和準確度提供原始數據。您可以使用運動傳感器來檢測諸如傾斜,搖晃,旋轉或擺動。
有三個支撐大類傳感器:
這裏的用於感測重力和加速度計的樣品的代碼:
private SensorManager mSensorManager;
private Sensor mSensor;
...
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mSensor = null;
if (mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY) != null){
List<Sensor> gravSensors = mSensorManager.getSensorList(Sensor.TYPE_GRAVITY);
for(int i=0; i<gravSensors.size(); i++) {
if ((gravSensors.get(i).getVendor().contains("Google Inc.")) &&
(gravSensors.get(i).getVersion() == 3)){
// Use the version 3 gravity sensor.
mSensor = gravSensors.get(i);
}
}
}
if (mSensor == null){
// Use the accelerometer.
if (mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER) != null){
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
}
else{
// Sorry, there are no accelerometers on your device.
// You can't play this game.
}
}
有關傳感器管理器的更多信息,請查看:https://developer.android.com/guide/topics/sensors/sensors_overview.html