[1/2] Peek

Sensors are fully disabled when screen is on.
When you turn the screen off, it will start pulling both
gyroscope and proximity sensor values. If it detects
using the gyroscope sensor that the device is lying on a table,
it disables proximity pulling.
If it detects with proximity sensor that the device is in
your pocket, it disables gyroscope pulling.

This way, we save some battery from the beginning.
Later, when you receive a notification, it enables
a partial wakelock (CPU on but at low frequency),
and starts listening for movement, either from getting it out
your pocket or lifting off from the table.

If it detects those events, it will turn on screen
and show the notification. Wakelock timeouts on 10 secs,
so if you receive a notification and there is no movement
in that time, sensors will stop pulling after that time,
disabling Peek interaction until a new notification comes.
Peek doesn't process low and min priority notifications.

[1/2] Peek

当屏幕开启时, 传感器完全禁用.
当你关闭屏幕时, 他会开始获取陀螺仪和近程传感器的值.
当他通过陀螺仪检测到设备平放在桌面上时, 会停止获取近程传感器的值.
当他通过近程传感器检测到设备在你的口袋里时, 会停止获取陀螺仪的值.

通过这种方式, 我们可以从整个Peek运行初期就开始节省电量.
此后, 当你接收到新通知时, 他启用一个partial wakelock(低频开启CPU),
并且开始监测你的运动, 是从桌面上拿起抑或是从口袋中拿出.

当他监测到这些运动时, 会开启屏幕并显示通知. 伴随10秒钟的wakelock,
因此当你收到通知且在这段时间内没有动作后, 会停止获取传感器的值,
并禁用Peek的交互直到收到一个新的通知.
Peek不处理低优先级和最小优先级的通知.

[2/2] in platform_packages_apps_Settings