2
ウォッチフェイスがアクティブな間に「目を覚ますスクリーン」アクションを検出する方法はありますか?時計の顔がこの動作を検出するようにして、時計をもう一度傾けて(例として)画面のタイムアウトを遅らせるようにします。Android Wearがウォッチフェイス/アプリで手首の傾きを検出しています
ウォッチフェイスがアクティブな間に「目を覚ますスクリーン」アクションを検出する方法はありますか?時計の顔がこの動作を検出するようにして、時計をもう一度傾けて(例として)画面のタイムアウトを遅らせるようにします。Android Wearがウォッチフェイス/アプリで手首の傾きを検出しています
ほとんどのAndroid搭載端末には、動き、向き、さまざまな環境条件を測定するセンサーが組み込まれています。これらのセンサは、高精度で正確な生データを提供することができます。モーションセンサーを使用して、傾き、揺れ、回転、スイングなどを検出できます。
センサーの3つの支持広義のカテゴリーがあります。
はここで、重力や加速度を感知するためのサンプルコードです:
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.
}
}
sensormanagerの詳細については、https://developer.android.com/guide/topics/sensors/sensors_overview.html
をご確認ください。