# ActionBarSherlock - A Love Story (Part 2)

DevFeed: [ActionBarSherlock - A Love Story (Part 2)](<https://devfeed.tech/articles/actionbarsherlock-a-love-story-part-2-20911.md>)

Original publisher: [Read original article](<https://jakewharton.com/actionbarsherlock-a-love-story-part-2/>)

Published: 2011-12-19T00:00:00Z

Content type: article

Language: en

Sources: [Jake Wharton](<https://devfeed.tech/sources/jake-wharton.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Library](<https://devfeed.tech/topics/library.md>), [Java](<https://devfeed.tech/topics/java.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [API](<https://devfeed.tech/topics/api.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [App](<https://devfeed.tech/topics/app.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [api](<https://devfeed.tech/tags/api.md>), [app](<https://devfeed.tech/tags/app.md>), [caching](<https://devfeed.tech/tags/caching.md>), [java](<https://devfeed.tech/tags/java.md>), [library](<https://devfeed.tech/tags/library.md>), [migration](<https://devfeed.tech/tags/migration.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [sdk](<https://devfeed.tech/tags/sdk.md>)

## AI overview

This article recounts the origins of ActionBarSherlock, which began as part of an Android application created to monitor VMware vSphere environments. The author ported a Java SDK to Android, built a SOAP client with caching and lazy loading, and developed a shared action bar API for phones and tablets.

## Source excerpt

Despite this, however, most users probably have never used the first or second versions, let alone the "lost" third version which was scrapped just hours from release. In future posts we'll look forward to where version four will take us. For this post, however, we'll be taking a quick look back at the origins of the library. Like most libraries, ActionBarSherlock was birthed out of personal necessity. With my recent migration of the majority of our servers at work to VMWare and the vSphere platform in January 2011, I wanted an app which allowed me to view essential VM information and perform quick vMotions from my phone. At this time there was only two apps of exceptionally inferior quality on the Android Market which offered such functionality--neither being open source. It's easy to guess what happened next: I began down the path of writing my own. Writing an app which interfaces with vCenter Server (essentially vSphere's coordination hub) is no trivial task. I spent a month porting the Java SDK to run on Android. During this process of ripping and replacing I ended up writing my own SOAP client which married aggressive caching with lazy loading objects. During this I discovered a lot of fun little-known facts about Android and Dalvik (Did you know that when reflecting on a class' properties Android will return them in alphabetical order while desktop Java returns them in declaration order?). After about one month I had a mostly-working API wrapper which led to the next logical step, creating the application shell. At that time, and much to my amusement today, I thought GreenDroid to be the end-all, be-all library for implementing the common user interface patterns easily. If you're following the timeline in your head, you might have already guessed that the Honeycomb SDK had landed this very same week and I chose to be forward thinking and support both phones and tablets with a single APK. This would, however, necessitate a bit of work since we were pre-Android C