Talking Picture List

The Talking Picture List app allows the user to associate a text description with each image in the phone's mediastore, and have that text spoken while viewing the image. The app must have an SQLite database (using the Room abstraction) that has entries that hold MediaStore image _IDs and the images' descriptive texts.

The app starts by selecting a random song from the phone's audio library and playing it in looping mode. While the music is playing a list of the images' micro-thumbnails and their descriptive texts is shown on the screen. When the user clicks on an element of the list the song is paused, and

When the dialog is dismissed or the activity returns, the speaking is stopped (if it is still going) and the song is resumed. If the database was updated in the new activity, the list view is updated.

Use best coding practices for all aspects of the code, including a nice icon!

Extra Credit

An extra 4% is available by adding a further feature to the app. In addition to the descriptive text, a recorded voice description of the image is also be stored in the database as a byte[]. Each list element has a checkbox indicating whether or not a recording has been attached to the image. When an image's dialog is raised, first the descriptive text (if any) is spoken, then (if there is a recording) a short silent pause and the recording are played. The editing activity contains controls to record a voice description for the image.

My TalkingPictureList.apk. This outline might make your life easier.

Submission and Grading

The app is due by the start of class on 28th November. You must submit a .zip or .tar.gz or any other compressed archive containing your entire project directory for TicTacToc, plus a .apk, via Blackboard. You can submit the project as many times as you want on Blackboard until the due time. Vraj or I will sit with each of you and run the app to grade it's execution. Vraj will grade the source code according to usual standards for Java coding, acording to this marking scheme. Your project is worth 20% of the course grade. Please review the policies on assessment in the administration document.