From reading a different thread here in overflow, which is the following: BroadcastReceiver Vs WakefulBroadcastReceiver
The main difference is that the CPU will stay awake in the WakefulBroadcastReceiver and not in BroadcastReceiver. Is there any reason why we want to keep the CPU always awake, or Not?