Why Stack Exchange for Android is using ActionBarSherlock, this makes app bigger and slower. The ActionBarSherlock adds action bar support to older android versions (Android 2.x), but Stack Exchange for Android requires Android 4.x! What is the reason?

This (ActionBarSherlock) allows you to easily develop an application with an action bar for every version of Android from 2.x and up.

Android 4.x has native support for Action Bar, Sherlock and Android Support library is not required!

The ActionBar APIs were first added in Android 3.0 (API level 11) but they are also available in the Support Library for compatibility with Android 2.1 (API level 7) and above.

Android Support Library + ActionBarSherlock increases the size of the application of 600kB+

what is included screenshot

  • What are you asking "why they went with ActionBarSherlock" or why is the app only supporting 4.0 and newer, rather than 2.0 any update? – psubsee2003 Jan 28 '14 at 13:12
  • Im asking "why they went with ActionBarSherlock", this is not necessary for android 4.0. Android 4 has native support for Action Bar – MᴀʀɪᴜsᴢS Jan 28 '14 at 13:13
  • 5
    Ok, that's relevant info for your question. Not everyone will know that tidbit. – psubsee2003 Jan 28 '14 at 13:15
  • Meta Stack Overflow is currently offline for maintenance for me now :) So wait – MᴀʀɪᴜsᴢS Jan 28 '14 at 13:16
  • 2
    More context from someone who knows a little bit about Android development: stackoverflow.com/a/21384262/1288 – Bill the Lizard Jan 28 '14 at 14:17
  • 1
    Hmm, maybe SO authors also learns from this book? Joke ;) – MᴀʀɪᴜsᴢS Jan 28 '14 at 14:27
  • 2
    It is possible that they are looking to support Android 2.x but have not gotten around to testing it or fixing lingering blocking issues for 2.x support. – CommonsWare Jan 28 '14 at 14:32

When we first started we decided that due to our tech-savvy audience and the limited capacity we had internally to dedicate to it, we'd only support Android 4.0 and above at launch.

Obviously the next step here was to decide between meaning we'd only support Android 4.0 and above or we'd use nice helper libraries like ActionBarSherlock or ActionBarCompat to make our code be able to eventually easily downgrade to lower versions, while only needing to test 4.0 and above at the present.

Making the app work on lower versions of android is a right now and since we're using ActionBarSherlock this lets us only have to deal with testing the android AP calls, low memory conditions, smaller screen density conditions, and vendor GUI differences found on lower levels of Android rather than having to rewrite all of our core logic too.

  • 2
    Android versions below 4.x is less than 25% of all devices and shrinking. Do you really want to go that way? – ale Jan 28 '14 at 17:38
  • 1
    @AlE. We've made no decision about how low we'll be going with Android version support. We've simply set ourselves up to be able to do that easily if we choose to do it. It's not like using ABS versus regular Android makes anything more difficult to do. Why not use it? – Kasra Rahjerdi Jan 28 '14 at 18:00
  • No one now sells android devices with 2.x. Android devices life time is something like 2 years. Also low memory and smaller screen can happen with Android 4 (especially with 4.4). It is much better to make good app with support for all new APIs. – MᴀʀɪᴜsᴢS Jan 28 '14 at 18:01
  • 4
    @MariuszS Admittedly, I took this photo seven months ago, but I'm pretty sure I can go to my nearest grocery store an get a 2.3 phone right now. – Brian Nickel Jan 28 '14 at 18:10
  • @BrianNickel Yes, my mistake ;) No one is producing android 2.x now ;) – MᴀʀɪᴜsᴢS Jan 28 '14 at 18:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .