2016-11-27 4 views
2

Gibt es eine Möglichkeit, die Aktion "Handgelenkneigung zum Aufwachen" zu erkennen, während das Zifferblatt aktiv ist? Ich möchte, dass mein Zifferblatt diese Aktion erkennt, so dass es das Zeitlimit des Bildschirms verzögert, indem es die Uhr erneut kippt (als Beispiel).Android Wear erkennt Handgelenkneigung im Zifferblatt/App

Antwort

1

Die meisten Android-Geräte verfügen über integrierte Sensoren, die Bewegung, Orientierung und verschiedene Umgebungsbedingungen messen. Diese Sensoren können Rohdaten mit hoher Präzision und Genauigkeit liefern. Sie können Bewegungssensoren verwenden, um z. B. Neigen, Schütteln, Drehen oder Schwingen zu erkennen.

Es gibt drei Stütz große Kategorien von Sensoren:

  • Bewegungssensoren
  • Umgebungssensoren
  • Positionssensoren

Hier ist ein Beispielcode zum Erfassen der Schwerkraft und Beschleunigungssensor:

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. 
    } 
} 

Weitere Informationen zum Sensormanager finden Sie unter: https://developer.android.com/guide/topics/sensors/sensors_overview.html