Using The Android DownloadManager

Since Gingerbread, Android has included support for handling long-running downloads via the DownloadManager. Using previous versions apps had to manually handle threading, displaying progress to the user, connectivity issues, and registering the downloaded media with the MediaStore (if applicable). In this example, I’m going to use the built-in DownloadManager to download an MP3 and handle its completion via a BroadcastReceiver. Before initiating the download, we want to query the DownloadManager to see whether the file is currently being downloaded so we prevent duplicates. Read On →

Querying And Removing Media From The Android MediaStore

Android provides a way to register different type of media, such as audio, video, and images, for consumption by any app. This is convenient if your app is, say, a music player or an image editor. Android’s MediaStore is the provider for this meta data, and includes information about the media such as title, artist, size, and location. If your application does any sort of media content creation, such as image editing or downloading audio from an external website, then you generally want to make that content accessible from any other apps that can consume it. Read On →

Attaching Lasers To A Syma S107G RC Helicopter

I received the Syma 107G R/C Helicopter as a present recently. After a few days of flying it around my apartment giddily (and tormenting the person who got it for me) I naturally began to think about different modifications I could perform to make it unique. I thought about adding stronger motors, replacing or a second battery, and changing the propellers. While all of these are still good mods, they weren’t immediately practical because I didn’t have the materials to do any of them. Read On →