如何做到长按power键唤醒系统!?
产品有了新需求:要求长按power键3秒钟,系统进入suspend状态;再长按power键3秒钟,唤醒系统。长按3s让系统suspend这个很好做,但是长按3s唤醒系统就让我郁闷了,这个似乎是控制不了,把power键设置为唤醒源之后,只要短按power键中断上来,系统就被唤醒了,如何做到长按3s呢!?不知道大家有什么高招?
做延时肯定不行。目前我是在BSPPowerOn()函数中检测到了这个power键的唤醒中断后就轮询3s检测,如果power键一直处于按下状态就让系统唤醒,否则就一直轮询等待。但是这样做虽然表面上屏幕没有被点亮,但是系统实际上已经被唤醒了,已经恢复现场了,电流已经上来了,这种做法虽然满足了长按3s唤醒系统这个功能,但是一旦用户短按power键后,系统耗电电流就上来了,待机时间也就短了,这样显然不行。大家多给些意见吧!!感激不尽!!