I see no reason why Twitter should open source their app. They have absolutely no obligation to, and IMO, should not be pressured to do so just because some blogger feels that <i>" there is an increasing divide between the UI patterns in their Android app versus the UI patterns that most developers work with"</i>.<p>The author says: <i>"And lastly, Twitter should release this app because they said they would."</i>.<p>Well, here is the statement from Twitter:<p><i>"We had a great time working with the Android team and are thrilled that Google will be open sourcing the code used in this app in the near future."</i><p>Saying Google will open source the code <i>used</i> in this app is completely different from saying "we ourselves will open source this app". It almost certainly means that Google will open source some small component that is used in the app. IMO, it is a bit of a leap to interpret that statement as saying "Twitter <i>will</i> open source the app".<p>IMO, in the absence of a more complete statement from Twitter regarding open sourcing their app, it is dishonest of the blogger to say Twitter <i>"has no interest in making good on their word"</i> when it seems like the blogger is putting words in Twitter's mouth. If a more explicit statement exists from Twitter, then the blogger should have cited that, instead of the slightly-but-not-really-ambiguous statement from Twitter that he used.
So the argument is basically, "I want my app to look like yours; so open source it for me to steal the layout." Is this really how people write software these days?
"You'll notice that Twitter is no longer using the standard Android ListActivity. There is a slight border around this list right now, which is VERY new to Android apps."<p>A ListView with some layout_margin ? Am I missing something special ?
I understand that Twitter said they were going to open source their application a very long time ago, but I've found that if I am interested on how they do anything the folks on the official Android irc channel are very helpful. Their initial version of the application used the dashboard interface that google revealed as the future of Android UI but there was absolutely no example code on how to do it until the recent Google I/O application that was open sourced. The people on the IRC channel helped me replicate that very quickly.<p>If you were angry enough to write a blog post, you could've also looked into decompiling the code and seeing how they do it yourself. If you use dex2jar:<p><a href="http://code.google.com/p/dex2jar/" rel="nofollow">http://code.google.com/p/dex2jar/</a><p>you can see that the view you're discussing is a custom ListView they made called RefreshableListView which actually does extend ListView so it is technically a ListView.
Hasn't Twitter straight out requested that people not develop more clients? Example article:
<a href="http://www.readwriteweb.com/archives/twitter_tells_developers_to_stop_building_twitter.php" rel="nofollow">http://www.readwriteweb.com/archives/twitter_tells_developer...</a><p>Open sourcing it would just help people to publish slightly different versions with little effort - which is what they say they don't want...
I haven't checked this out, all I'm saying is it looks a LOT like <a href="http://mobile.twitter.com" rel="nofollow">http://mobile.twitter.com</a>. Same border, same pull down to refresh. Mobile web FTW.
Most of Facebook's Android app is just a web view as is their iPad app and probably their iPhone app too. I wouldn't be surprised if the Twitter Android app is also a web view.