Monday, February 28, 2011

Broadcast SMS v2.6 Released

Broadcast SMS is really, really getting close to feature complete for the Lite (ad supported) version.  Today added some more Help and About changes.  A couple of subtle tweaks and an Accepted Usage Agreement on Send.  Working on stitching texts together so they show up as 1 on the remote phone.  Also working on selecting a "group" from your contact list in addition to reading from a file.  That should make the application more usable for the general populous in addition to direct marketers.

Sunday, February 27, 2011

Broadcast SMS v2.5 Released

The help and about texts have been reworked.  I implemented a change list pop-up on 1st use after an update.  More refactoring work.  Really enjoying the direction the code is going.

Broadcast SMS v2.4 Released

I added Google Analytics to the application as well as some major refactoring of the file management portion of the application.  Added a restriction of 1,024 bytes to each line read from the input file.  Closer and closer to feature complete with the free version.

Saturday, February 26, 2011

8 Days ...

It's been 8 days since the last force close or freeze (ANR) error.  7,000+ activity (screen) views.  Versions 2.2 and 2.3 definitely did a lot for stability and error checking.  I've added Google Analytics to the application though I have not pushed that version to the market yet.  Making sure I am getting the kind of use data that will make future development smarter ;)  I'm getting my activity view stats from AdMob at the moment.

I've also started refactoring the data management 1/2 of the application.  The whole app has come a long way since its humble 3-activity screen beginnings.  Everything was tied together with static variables and methods.  Surprised it worked at all honestly ;)  Probably the funniest part about that is I had a simple null line check in place to keep people from getting empty items into the addressee list.  When I started refactoring I broke that check.  My force close errors went from 2 to 8 in a couple of days.  That's when I realized I needed to redouble my efforts and get the SMS 1/2 of the application refactoring done.

There's some cool stuff coming.  Stay tuned.

Thursday, February 24, 2011

Broadcast SMS v2.3 Released

This version is almost feature complete for the free version.  I added a rolling history of messages transmitted to ensure you don't violate Android OS' 100 messages, per application, per hour limitation.  I continue to refactor and harden the application.  The rolling history check should eliminate the last known Force Close issue.

I have one outstanding feature request to investigate for the free version and some general cleanup work to do.  Darrell has asked that I find a way to stitch the messages together to appear as 1 large message on the receiving phone.  I will be working toward that end before the final free release.

Feature requests and bug notifications equally appreciated!

Tuesday, February 22, 2011

1-hour History

At present the app is dependent on you, the user, to regulate yourselves by not sending more than 100 messages in an hour.  An hour is surprisingly long time when you're waiting to send more messages and the occasional Force Close report supports my suspicion.

I'm on the verge of a release that will keep track of how many messages you've sent in the last 60 minutes and present a dialog to keep you from making a mistake.

Trust me; this isn't the end of the message limit issue.  I just want to eliminate as many force close issues as I can before starting any new feature development.  I also have a lot of refactoring to do.  Quick and dirty means I ended up with a lot of "work" being done on "screens."  That has to go ;)

Monday, February 21, 2011

Helper Classes

Lots more OO implementation work on Broadcast SMS.  Nothing to release tonight, but I've moved all the Application's Shared Preferences into a helper class.  Sure makes things easier to follow.  Assembla source control and the good ole telephone make code reviews possible across several hundred miles.  I can always tell when my buddy thinks something is odd ... he has this long pregnant pause.  Many thanks GPZ!  My code wouldn't be what it is today without your help.

SMS Message Limit Identified

And there it is ...

/** Default checking period for SMS sent without uesr permit */
private static final int DEFAULT_SMS_CHECK_PERIOD = 3600000;
/** Default number of SMS sent in checking period without uesr permit */
private static final int DEFAULT_SMS_MAX_ALLOWED = 100;

You can send 100 messages from any 1 application every hour.  Any more and your phone will get cranky.  Stay tuned.  I have a way around this that doesn't require you to elevate your permissions ;)

Sunday, February 20, 2011

Broadcast SMS v2.2.3 Released

As previously mentioned the Android OS has a hard limit of 100 messages. I am working on a way around this without rooting your phone. As an immediate fix to a force close issue I published a version this morning that locked the SMS message to 160 characters or less.

As of version 2.2.3 your messages can be greater than 160 characters but you'll have to send to fewer recipients. So, if you have 161-320 characters in your message you'll have to reduce your addressee list to 50. If you have 320-480 characters = 33 addressees, etc.

If you try to send again too soon you'll get a force close. If anyone can identify what that timeout period is it would be much appreciated.

Force Close Issue Identified

Darrell Y. wrote me to inform me that messages greater than 160 characters were causing a force close issue.  I have put in a hard 160 character (byte) limit to eliminate that issue.  I will be implementing multi-part SMS messages in the next release.  Thank you Darrell!

Saturday, February 19, 2011

Message Limits

I'm working on it. I have several ideas about how I'm going to handle this problem. If you send more than 100 messages in a given amount of time you're presented with a pop-up dialog box (see below) that you must click in order to continue sending. 100 messages seems to be the limit on Verizon in the Android OS though I do not know the period.

Sending SMS Messages -- Unknown application A large number of SMS messages are being sent. Select "OK" to continue, or "Cancel" to stop sending.

Friday, February 18, 2011

AYDABTU Development's 1st $1.00

After just 5 days AYDABTU Development has made it's first $1.00! Whether that really goes anywhere or not remains to be seen. This is all 1 big experiment for myself in application development. I'd be doing it for free, but since it's so easy to add ads to the application I might as well earn a little coin (very little!) for the effort. Keep using the app ... (keep viewing the ads!)

Proud of Broadcast SMS v2.0+

Now Broadcast SMS looks and behaves completely differently than it did in its 1.0 iterations. It's managed by an umbrella application and all the static methods and instance variables have been removed. Everything is behaving in an orderly OO fashion. My friend Android Code Monkey, aka Greg Z., has been so very helpful through this entire maturation. He has to repeat himself so many times until I smack my forehead like the V8 commercials as it finally sinks in. Thanks Greg!

In addition to managing everything much better I've added very robust regular expression checking to the phone numbers that are read in and used as the addressee list for the application. Localization is nearly complete with only the Help and About dialogs needed to be finalized. I used Google Translate to provide crude Spanish translations mostly as a test, but I did release the app in Spanish as well. I have done some work to reposition my ads around the screen.

There's still lots of feature work to do, but I've been focused on fixing any force close issues over the past couple of days. There little tiny mysteries and they're very tricky to track down!

I have sent myself 100 SMS messages several times tonight trying to force the issue. All-in-all it's coming along nicely. So, if you're a current user and have been frustrated please hang in there! It is under active development.

Broadcast SMS Features & Enhancements

There was a lot of furious development between 2/6/2011 and 2/12/2011 and a fair share of lost sleep. Help and About dialogs were added. Backgrounds, icons and subtle tweaks to the UI were made in an attempt to pretty things up. Storing items in the local preferences for the application was added. Lots of little error checking methods were added.

Then on 2/12/2011 something else hit me. I'm doing this out of sheer love for coding, but why shouldn't I earn a little coin in the process?! I added AdMob ads to the application. By 2/15/2011 I had done a considerable amount of refactoring, added ads and had most of the application ready for localization. It's at version 1.3.4 now.

Broadcast SMS v1.0 Released

This is a historical posting as this really happened on 2/6/2011!

I was approached by Stuttering John Smith for assistance with a telemarketing application he was having trouble with. I started looking through the code and identified some quick fixes to the issues he was having, but I also noticed some glaring design issues. Within a few days I had it in a working state and gave him the source code.

That app really got me thinking ... I can do something like this and I had a lot of ideas about how to make it better! The original code I hobbled together was a collection of a few activities and some static methods to handle the data transports. This is my 1st attempt at OO code and my 1st attempt at Android. I always want to learn and improve so I took this code to the local Cincinnati .NET Users Group meeting called BitSlingers. It's an informal affair but I figured that was a good place to get a code review. My good buddy Nate went with me and offered to provide some feedback. That was awesome because I knew we were good enough friends that he could be brutally honest. Man was my code a mess. I was so proud to have published that app in the Android market, but it was a train wreck. I took notes and watched a few more of O'Reilly's awesome videos "Developing Android Applications with Java." That set me on a path of extensive refactoring ...

Bringing It Altogether

There's a lot more to publishing an app than slapping some code together in an editor and uploading it to the Android Market. Over the next few days/weeks I'll be getting everything consolidated here: where it should be. Thanks for being patient. Remember, this is a hobby not a job. Giving it every spare moment I have.