Write an app whose first activity has a rating bar and a button, and whose second activity has a progress bar. The rating bar starts at 0 and has 5 stars. When the button is pressed in the first activity, the second activity is started. The second activity has a progress bar that starts at 3 seconds, and counts down in 0.5 second increments. If the progress bar gets to 0 the second activity returns RESULT_OK to the first activity. Otherwise (if the back button is pressed) it automatically returns RESULT_CANCELLED. The first activity checks the result code from the second activity, and if it's RESULT_OK increments the rating bar, else it pops up a short toast to indicate no progress was made. When the rating bar gets to 5 stars the first activity finishes.
Use best practices for all aspects of the code!