This project is a request for fully functioning Android App and all Source Code providing the functionality described below.
App must provide:
1. User Interface to set and remember an unlimited number of scheduled events (daily, weekdays only, weekends only, selected days of week, or date, all include time of day specified as optionally 24 hr or 12 hr AM/PM clock time (hh:mm)). Trigger must allow option for specified time zone or local clock time based on Android device clock. Selections must be user selectable per scheduled item with defaults to preferences based on user configuration. Pre-configured user selectable preferences should include 24/12 hr clock, timezone vs local device time. Each user created scheduled event must be user selectable as to whether it is one-time or recurring and offer the option for an end-date/time for recurring events. The scheduled events must possess one user selectable parameter which determines Activate or Deactivate to be passed into the provided app. User interface must allow user to add a new event, modify an existing event, delete an existing event. Each of these actions must result in the relevant action on the Android timer system to register, modify, deregister the scheduled event so that it occurs or does not occur as appropriate to the selected parameters.
For example: User wants this app that you are creating to schedule a timer which will fire every 6 hours, Monday through Friday alternating between an "Activate" notification and a "Deactivate" notification. The user wants this timer to run from now until December 20th, 2012.
2. After user creates a scheduled event, the app must provide a mechanism to cause the Android device to broadcast an event/notification back to start the app and execute specific code. For purpose of app delivery, you must provide a documented section in source code showing where the event handler is located and it should include a debug log entry showing that the scheduler triggered an event and documents the associated parameter "Activate" or "Deactivate".
3. The scheduled events must function regardless of whether the provided application you are creating actively running on the Android device at any given time. In other words, the scheduled events must cause the provided application to start-up and process the event at the specified times even if the app is not running at the time of the scheduled event. It would be ideal if there is an option for each scheduled event as to whether it would "wake up the Android device" to process the event or rather only process the event when the Android device is currently powered-on. This point is negotiable and not a hard requirement. It might make the difference in selection of your bid versus your competitors though.
The final application which is outside the scope of this Freelancer project will incorporate additional functionality so it is critical that this project be well documented as to the method in invocation upon event trigger so that the additional code can be incorporated. This additional code will cause user interface activity such as programatically activating the Android Phone App and dialing a specified phone number so the app you provide must allow for user interface interaction upon Event trigger. Preference will be given to those bidders who include this functionality as well but it is not a required part of the scope of this project request. It is sufficient if this project delivers source code that provides all the functionality specified in the numbered paragraphs above.
Thank you for considering my request!