DroidCatcher 2.1.1 released

Unfortunately the last DroidCatcher release, while fixing a few issues, introduced a major bug.  The player screen would occasionally freeze up, forcing users to take drastic actions to reset the app.  I’ve spent the last two days fixing this and a few other obscure bugs.  I’m also proud to say that I’ve also got the Alex Jones live streaming now working correctly on ICS.

All the DroidCatcher based apps have been updated on Google Play:


DroidCatcher 2.1 released

In a prior release I modified the service code in an attempt to make the applications more battery friendly, but I inadvertently changed the way playback state was persisted to the disk.  This was a major bug, that resulted in the playstate not being saved at the appropriate times, so when you restarted a podcast, you rarely actually started where you left off!  This should now be fixed in the latest market release.  All apps have been rolled out as of today.  Happy podcatching!


Winding up April

I’m preparing the next release of DroidCatcher, and if you’re running the most recent version of  Survive you’re getting a sneak peek at it.  It’s primarily a bug fix release, but I did manage to reduce the install size greatly.   By converting all the background images from PNG to JPG, the app sizes shrunk 30-50%. Pretty nice what a little compression can do. I was really hoping to get a full blown release out for all the DroidCatcher apps (including a brand spanking new one), but I’m still trying to iron out some issues. I’d like to start on some new projects, so I’m spending a lot of time trying to ensure it’s going to be solid release.

Android’s MediaPlayer class has always been a huge pain in the ass.  It has undocumented race conditions, throws exceptions when it shouldn’t according to the documentation.  It’s just miserable to work with.  I haven’t done any development for ICS yet, and I’m hopeful that they’ve improved things somewhat.


DroidCatcher permissions

Every now and then I get a nasty review or email citing the permissions of one of the DroidCatcher branded apps.  I thought it would be worth some time to go through each of them ( currently 8 ) and explain a little about why each is needed.

android.permission.INTERNET – This should be obvious, but without internet access, downloading podcasts would be challenging.

android.permission.ACCESS_NETWORK_STATE – Is the device connected to the network? Is WiFi enabled? This is useful information.  For example, DroidCatcher supports an auto-download feature, and you can set it to only perform downloads while connected to a wifi network.

android.permission.READ_PHONE_STATE – This permission gets a lot of attention.  DroidCatcher uses it to do nice things like, pause the audio when you make or receive a phone call.  It’s also required by most ad network SDK’s.

android.permission.WRITE_EXTERNAL_STORAGE – When you download a podcast, DroidCatcher stores it on the sdcard.

android.permission.WAKE_LOCK – This is required to temporarily prevent the device from going to sleep when downloading a podcast or playing audio in the background.

android.permission.RECEIVE_BOOT_COMPLETED – This one also raises some eyebrows.  Some of DroidCatcher’s features require an alarm to be set and periodically run every so often, like checking for new episodes, etc.  These alarms are removed when the device is powered off, and the only way to renew them is to re-register them with the OS when the device reboots.  Remember, these are jobs that are designed to run quickly and exit, they are not long running background services.

android.permission.BLUETOOTH – DroidCatcher supports bluetooth devices and headsets.  Couldn’t do it without using this permission.

android.permission.ACCESS_COARSE_LOCATION – This permission is used to leverage regional ads for the ad networks SDK.  It uses only a crude approximation of a users location.  It does not get a GPS fix.  This allows the ad networks to do targeted advertising.

I hope this clears up some confusion about why DroidCatcher uses all these permissions!


Survive 1.31 and Starcast 1.19 released

Two more releases, bringing both apps up to date on the latest DroidCatcher platform.

Starcast 1.19  && Survive 1.31

  • Seek Button Improvements : tapping the seek buttons will now instant skip 30 seconds, long press behavior remains the same.
  • Background Service Improvements : The background services should now shut themselves down after idling for a small amount of time.
  • Twitter Sharing Fixes : Now it’s possible to tweet with multiple twitter clients.

The Complete Alex Jones, emergency release 1.16

The Alex Jones RSS feed is currently broken!  If you visit the itunes podcast page you’ll see the dates are all set to the current date :


broken podcast


Because of this, I had to cobble together a workaround and release it with very little testing!  Look for version 1.16 on Google play. I’m hoping that the feed errors will get fixed quickly, but regardless, if you update to the latest version of the app, you should be back in action.

There are a few other notable fixes in this release, such as improved seek button support, background services that shut themselves down when not in use, and improved twitter support.


Tags: , , ,
default reboot!

We’re finally getting around to having a real website! Yay!

© 2012 Droidworks All Rights Reserved