DO NOT MERGE Add a new WakeupMessage class

This is useful when using the new AlarmManager direct callback
interface to wake up the system and request that an object whose
API consists of messages (such as a StateMachine) perform some
action.

In this situation, using AlarmManager.onAlarmListener by itself
will wake up the system to send the message, but does not
guarantee that the system will be awake until the target object
has processed it. This is because as soon as the onAlarmListener
sends the message and returns, the system is free to go to sleep
again.

Bug: 20157436
Bug: 25823676
Cherry-picked WakeupMessage.java from 9d3aadb24778cc36a350a04b088d2ed7ee3790e1
Change-Id: Idff20029d287f26347441a2523b7fb20eda6a8b0
1 file changed