Today I finished some of the new layouts.  On average, the UI is rendering an order of magnitude faster than the old one. 



A few comments on the subject of Wifi Fixer that I’ve received:

“Wifi Fixer needs a refresh”

“The design needs to holo”

“It needs to use less memory and CPU”

I agree with all of these.  The last major design refresh was done before the design guidelines at were available. I’m going to try to give it some project time and do a design refresh to bring Wifi Fixer into 2013, and I’ll likely clean up the code as well.

Rebuilt with GPL licensing and proguard disabled. 

A less-than-ethical developer (Exhibit Studios, from the email) has put up a ripped-off build of Wifi Fixer in the store with a few image assets changed.

This was not done with my permission, and while my app is open source, I do not want to provide jerks with ad networks free revenue.   

I have contacted Google, and am considering several options for response.

In the meantime, if you have downloaded this app, please remove it and install Wifi Fixer.   The apk is quite a bit bigger, probably for the ad network libraries, but it may contain something else you don’t want.

Maintenance release coming with 4.2 compatibility and a few important things.

I’ve been studying machine learning and computer science full-time, which has been great for my ability to write code, but it’s affecting my ability to look at this project’s code without wanting to refactor it all.

I discovered how obnoxious even a minor refactor for dependency injection would become with robojuice.    I probably won’t have the time/energy for a complete refactor of Wifi Fixer for some time.

So, once the build I’m working on is out the door, that’s it for guaranteed time on the project.

If you are a programmer with stout heart, you might find some interesting things in the source, which you are welcome to.

Despite my lack of formal education in computer science (until recently), there are good examples of the use of abstract classes to handle differing Android versions, different UIs, and some clever uses of intents.

One might ask why I wrote my own preferences utility class.  It was because I made a mistake early on thinking I should put the network check service in a separate process, and I noticed that the SharedPreferences instances in the service did not see the changes made in the activity using SharedPreferences methods, so I decided to implement my own listener, before I knew what a listener was.

I hope someone finds the source useful.

There will be more Android apps.

It appears that Android 4.2 has some more undocumented changes to WifiManager which break Wifi Fixer.   I will be disabling downloads for any devices with Android 4.2 installed until I can sort it out.

I will get a quick patch out with a few bugfixes and a compatibility fix for 4.2 when I do figure it out.

I am currently working on Wifi Fixer 0.9.6.      The major “feature” is integration of dependency injection via Roboguice, which is mostly to make the project’s code more sane.     This release may take a while.

There are a few goodies for you guys coming such as root support which may have a fix for the -200 dBm bug.

I have identified a way to reliably recover from the -200 dBm bug for non-rooted devices, but it may require the user to turn off the screen briefly to be effective.