A short while ago I posted about how many Android applications hadn’t allowed for tablets by assuming a direct correlation between screen density and screen resolution. I used the Android Facebook application as an example, and as they’ve just released an update I thought I should follow up the previous post and look at the changes they’ve made. Unfortunately it seems they’re heading in the wrong direction. The biggest backwards step is the removal of landscape mode.
Today is a sad day for me as I’ve decided to greatly reduce my involvement in the Android community, and I thought it best to explain why rather than leave the rumour mill to run its' course. For those who don’t know my background my involvement with Android started when Dan Morrill demoed Android at the London Google Developer Day in 2008. During his session my brain started ticking and came up with a method of using cryptographic signatures to show approvals and create trust brands so users could tell who thought which apps were “safe”, I mentioned it to him, he seemed interested, and so I expanded on the idea in a blog post, and from there on I was hooked.
In the last day or two lots of people have helped circulate a link to an O’Reilly effort to create a cookbook of community supplied Android examples, which is a noble effort, but there is a big drawback; and that’s the potential quality of the information. Any healthy community tends to be pyramid shaped when it comes to knowledge and experience. At the bottom are the people who are starting out and have little knowledge or experience of the subject matter, and at the top are the people who’ve been involved in the area for a (relatively) long time and have studied it in depth.
When the Dell Streak was first launched there was an aspect of it that caught me off guard, its' pixel density, and it would appear I’m not alone. Before the Streak developers could pretty much assume that if their app was installed via Google Market any device which reported itself as having low density display (ldpi) had a QVGA screen, any device with a medium density (mdpi) screen had a HVGA screen, and any device with a high density (hdpi) screen had a WVGA screen, and that seemed to work pretty well.
Please Note: Messing around with the firmware and OS on any device can render the device unusable. Please do not attempt to modify your firmware or OS unless you are confident you know what you are doing. I offer no guarantees and do not accept any liability for anything which may go wrong if you follow the information in this post. Here is my modified version of the instructions from the AOSP page for building for the HTC Dream range of ‘phones to cover the Nexus One Android 2.
[Declaration of interest: My company runs AndAppStore, an alternative to Googles Android Market] Theres been a fair amount of talk around Googles use of “Private APIs” in their Android applications since the Andy Rubin interview which appeared in the NY Times Bits blog, and I’d like to point out what appears to be a glaring mistake in one of the replies Andy gave. During the interview he said; I don’t know whether he said this because he doesn’t know about what’s in some of Googles Android applications, or whether he was towing a party line about Androids' open source nature, but that statement simply isn’t true.
First off the good. AppBackr. They came second, and as far as I’m aware they didn’t break any rules. I’ve personally sent them a congratulatory message and everyone who took part in making PortaPayments sees them as a honest, worthy winner. In the future I’d have no problems in working with them to help them help apps get funded with a tie-up via AndAppStore or help getting the word out to Android developers.
After certain events in recent weeks I thought it was worth putting up a post trying to encourage people to be more constructive in their criticisms. Take, for example, a conversation I had with a developer a few weeks ago who came from a Symbian background; Dev : I’m looking for a code examples for things like… how to change screens using a horizontal finger gesture on the screen on Android.
If you ran a competition and stated that; How many entries would you expect to find in the next round? Well, if you’re PayPal, that’ll be 11. And as for “gross abuses”, well, apparently “incentivized voting” (i.e. offering rewards for votes) isn’t a gross abuse (or certainly doesn’t appear to be enough of a gross abuse to warrant doing anything about), which I’m sure is something that any entrant into a voting process would be interested to hear.
After spending some time trying to build a firmware I’ve seen some things which have opened my eyes as to why the Android Open Source Project may not be seeing the kind of community contributions that would be expected of such a high profile project. Other people have shown an interest in knowing my thoughts so I’m going to throw out my top 3 for discussion which will hopefully help to improve things;