Archive for the ‘ Android ’ Category

Living with a Nexus One

I’ve had my Nexus One (unrooted) for more than a week now and thought I would just post some of my experience and thoughts.

First thing I noticed coming from a HTC Hero is that its fast.  As fast as a iPhone 3G but not quite to 3GS standards.  As you would expect this makes the user experience much nicer.  What used to take a few seconds to load happens almost instantly.  This is how all Android phones should be.

But after using it for a few days some weird things started happening mainly with Listen (I use it a lot). It seemed to be shutting down unexpectedly fairly regularly and it looks like it’s because it’s hit the OOM threshold.

This is interesting to me because the OOM thresholds are obviously still at the default.  Also I am still using Listen when it gets shut down.  So this means that the kernel is shutting down the Listen service because the Listen frontend has a low priority from being in the background.  I would think that ideally that the kernel should check if the the frontend is connected to any services and if it was then exclude it from the clean up.

I’ve always suspected that this was the case but it has been hard to prove on a custom ROM running all kinds of other mods.  But now with a stock Eclair ROM there is no doubt.

(Sorry for my rant)

There are the other things that have also been reported e.g. over sensitive touch screen, touch points jumping around, hard to use capacitive buttons etc.  Nothing new here.  And even though there are all these short comings I still believe that the Nexus One is the best Android phone out there for the modder.  Purely because it’s so heavily supported and there are/will be fixes either by the official or unofficial community.  Also the fact that it has a FM tuner, N wifi and a multi-colour track ball.

So the conclusion is that:

  1. I love my Nexus One
  2. I’m going to root it sooner rather than later.

Sometimes change happens too fast.

When I started making Auto Memory Manager (AMM…I really need to come up with a better name for this app) one of the things I tried to do was to let the user configure and apply the settings in as few steps as possible.  With this in mind I made it so that settings would get applied when a user pressed one of the buttons.  After looking at the feedback from Market and other friends it seems that this isn’t as intuitive as I imagined and has cause some confusion.  So the next point release as well as tidying up the code I’m going to also change how the buttons work so that it will be more in line with what people expect to see.

At this stage I will use the traditional select and apply model which is the most obvious (I hope).  The preset buttons will show the users the settings on the bars and when they have chosen the settings they want to apply they can press the (new) Apply button.  For a custom setting users can just play around with the sliders and press the Apply button.  Sounds simple/obvious enough?  I hope so.  :)

Auto Memory Manager 1.0.3 released!

So after 1 week of development Auto Memory Manager is at version 1.0.3.  As the version number suggest the changes have been major but I’ve enjoyed the learning process.

This release included 2 things.  One of which seemed to be a much needed help file.  It turns out that the usability of this app was only obvious to me and not many others…including my wife.  I showed it to her and gave a brief description of what it did and she immediately pointed out a major flaw in my rather basic app.  It wasn’t obvious what the buttons or the sliders did.  In short it wasn’t obvious what everything on the app did!  Which was a bit of a surprise to me as it seemed pretty obvious what they did.  (You press a button for the setting that you want.)  I still think this is an efficient way of choosing and applying a setting however I concede that it probably isn’t the most obvious.  So I’ve added a brief help file and in the next few days I will put up a more detailed help on this site.

The topic of memory management is a complex one and is one that I have a lot to learn about.  I plan to update this blog with my thoughts about this topic and my finding in general and also relating to my app.  Hopefully others will find it useful.  I have also have to mention the XDA forum.  In particular the “Android Internal Task Killer” thread and androcheck who provided the information to make this possible.  And for now this is probably still the best place to find out about how this app actually works.  But feel free to send me any questions over twitter or email and I’ll see if I can help.