1. A method for scheduling tasks for execution by a mobile device, comprising: scheduling a task to be executed by the mobile device; defining a connectivity prerequisite for the task; receiving connectivity state information associated with the mobile device; comparing the connectivity prerequisite to the connectivity state information; executing the task responsive to the connectivity state information satisfying the connectivity prerequisite; rescheduling the task responsive to the connectivity state information failing to satisfy the connectivity prerequisite; identifying a change of connectivity state of the mobile device responsive to establishing or changing connectivity with one of a plurality of communication interfaces in the mobile device; updating the connectivity state information responsive to identifying the change in connectivity state; comparing the connectivity prerequisite to the updated connectivity state information responsive to identifying the change in connectivity state; and executing the task responsive to the updated connectivity state information satisfying the connectivity prerequisite after the change in connectivity state.