该功能在系统设置-显示-拿起设备时唤醒
alps\vendor\mediatek\proprietary\packages\apps\MtkSettings\src\com\android\settings\display\LiftToWakePreferenceController.java
public boolean isAvailable() {
SensorManager sensors = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE);
return sensors != null && sensors.getDefaultSensor(Sensor.TYPE_WAKE_GESTURE) != null;
}
通过以上代码可以控制该功能是不是在设置中显示,也可以看出来用到的sensor是Sensor.TYPE_WAKE_GESTURE,当然这个sensor是需要驱动配置好之后,上层才可以正常的控制该功能的开启和关闭。
alps\frameworks\base\core\java\android\hardware\SensorManager.java
public Sensor getDefaultSensor(int type) {
// TODO: need to be smarter, for now, just return the 1st sensor
List
boolean wakeUpSensor = false;
// For the following sensor types, return a wake-up sensor. These types are by default
// defined as wake-up sensors. For the rest of the SDK defined sensor types return a
// non_wake-up version.
if (type == Sensor.TYPE_PROXIMITY || type == Sensor.TYPE_SIGNIFICANT_MOTION