I spent the last week or so learning Android programming. I find it important, in the learning of a new programming tool, to write something with clear specifications. This forces you to work on the best solution instead of using easy to code work-arounds.
The specifications are:
- The application should allow the user to read the Astrophotography Picture Of the Day published by NASA at http://apod.nasa.gov/apod on it’s Android device
- The application needs to be compatible with Android 1.5 (SDK #3)
- The user should be able to access the APOD for any date since june 16th 1995
- The user should be able to directly access the APOD of the current day
- The user should be able to navigate to the previous and next APODs
- The user should be able to navigate to the previous and next APODs with fling gestures
- The user should be able to view the picture in full size by clicking the preview picture
- The user should be redirected to the APOD website when clicking on the full size picture
These were the initial requirements … I will add some more stuff in the upcoming days:
- Change the full size picture activity from a WebView to an ImageView. This will allow the implementation of the OnClickListener callback and the re-use of the image bitmap in memory.
- Caching of the APODs on the SD card. This will save bandwidth, an important issue when using mobile networks.
- Adding a splash screen while loading the first APOD. Since loading the images can take a while on mobile networks, a splash screen with a spinner would look more professional.
The actual version of the project is published on my Github at the following address:
https://github.com/pchretien/APOD Feel free to fork, copying is not stealing!