From 3c288e6f2ee762b5e058c4f73f06ef384fab5dc8 Mon Sep 17 00:00:00 2001 From: Trevor Bunker Date: Fri, 8 Jan 2016 11:11:13 -0800 Subject: [PATCH] Define TYPE_DEVICE_ORIENTATION Bug: 23470411 Change-Id: Iceba2656936525c655f23fb00bb77521c432ba6a --- core/java/android/hardware/Sensor.java | 22 +++++++++++++++++++++ core/java/android/hardware/SensorEvent.java | 14 +++++++++++++ 2 files changed, 36 insertions(+) diff --git a/core/java/android/hardware/Sensor.java b/core/java/android/hardware/Sensor.java index e875864242325..6935174f58d6f 100644 --- a/core/java/android/hardware/Sensor.java +++ b/core/java/android/hardware/Sensor.java @@ -533,6 +533,24 @@ public final class Sensor { @SystemApi public static final String STRING_TYPE_WRIST_TILT_GESTURE = "android.sensor.wrist_tilt_gesture"; + /** + * The current orientation of the device. + *

+ * See {@link android.hardware.SensorEvent#values SensorEvent.values} for more details. + * + * @hide Expected to be used internally for auto-rotate and speaker rotation. + * + */ + public static final int TYPE_DEVICE_ORIENTATION = 27; + + /** + * A constant string describing a device orientation sensor type. + * + * @hide + * @see #TYPE_DEVICE_ORIENTATION + */ + public static final String STRING_TYPE_DEVICE_ORIENTATION = "android.sensor.device_orientation"; + /** * A constant describing all sensor types. */ @@ -618,6 +636,7 @@ public final class Sensor { 1, // SENSOR_TYPE_GLANCE_GESTURE 1, // SENSOR_TYPE_PICK_UP_GESTURE 1, // SENSOR_TYPE_WRIST_TILT_GESTURE + 1, // SENSOR_TYPE_DEVICE_ORIENTATION }; /** @@ -939,6 +958,9 @@ public final class Sensor { case TYPE_TEMPERATURE: mStringType = STRING_TYPE_TEMPERATURE; return true; + case TYPE_DEVICE_ORIENTATION: + mStringType = STRING_TYPE_DEVICE_ORIENTATION; + return true; default: return false; } diff --git a/core/java/android/hardware/SensorEvent.java b/core/java/android/hardware/SensorEvent.java index 906c2a1941d59..9937b2cb2d265 100644 --- a/core/java/android/hardware/SensorEvent.java +++ b/core/java/android/hardware/SensorEvent.java @@ -483,6 +483,20 @@ public class SensorEvent { * on it. In earlier versions, this used to be always 3 which has changed now.

* * @see GeomagneticField + * + *

{@link android.hardware.Sensor#TYPE_DEVICE_ORIENTATION + * Sensor.TYPE_DEVICE_ORIENTATION}:

+ * The current device orientation will be available in values[0]. The only + * available values are: + * */ public final float[] values;