Android 1.5

0) 1.5 issues


1.5 issues

consider that you are responding to a menu item

public class SomeActivity
extends Activity
//..other code

//a menu function
void respondToMenu1()
    //Say that I am going to do something a bit long
    //Show a progress dialog 
    ProgressDialog pd = new ProgressDialog(.....);;
    //do something that takes a few seconds
    //Close the dialog to indicate we are done

//..other code
} //end of class

What is wrong with this code? How can you correct it? Are there multiple approaches? which is a preferred approach?

Android Core /res/values/themes.xml

1.5 cupcake
1.6 donut 
2.x eclair
2.2 froyo
2.3 Gingerbread
3.x Honeycomb
4.0 ICS - Icecream Sandwich
4.1 Jellybean

4) Android Security News


Android Security News

5) android tool options


android tool options

6) Android User Guides


The URLs for Android user guides seem to change with each release. For now here is the list for the last 3 versions.

3.0 user guide

2.3 user guide

2.2 user guide

Android web goodies: various sundry useful links

Can I include externally build java jar files such as JDBC jars in Android?

There are a lot of research notes on the contacts API. I have collected all of them together into a folder so that they are in one place. You will find

code snippets
UI pictures
Research notes
Links to APIs
..and more

Click here to see the collected rsearch notes on the Conctacts API

There are a lot of research notes on the widgets API. I have collected all of them together into a folder so that they are in one place. You will find

code snippets
UI pictures
Research notes
Links to APIs
..and more

Click here to see the collected rsearch notes on the Widgets API

Compare and contrast LiMo with Android

Research log for Creating HTML apps for mobile



15) Exploring AlarmManager


You will find in this document

1. Basic research on Android AlarmManager API
2. Useful api references while working with AlarmManager
3. Not-so-intuitive truths about AlarmManager
4. Sample code
5. Downloadable Sample project
6. Finally what I call the AlarmManager Predicates

16) Exploring Google IO


Exploring Google IO

17) Game Developer Stories


Mobile applications and games offer an opening for a home based (1 to 4 developers) cottage industries. This is also a good way to learn and cut your teeth in programming as this gives a smaller scope for someone to have a goal and achieve it in a limited time frame.

However a serious single developer faces the question of can he/she do this? On this page I intend to document the stories I come across where folks have successfully transcended this chasm and are on the other side!

18) Game Engines for Android


Game Engines for Android

19) get on with git


get on with git

20) google tv


google tv

21) Heroku, Play, and Java


Heroku, Play, and Java

honoring the back stack across applications

How can I make a pending intent unique based on extras

How can I start writing apps for Camera in Android?

How can I view source on an android browser?

How I have learned Android SDK: An Authors note

How to buy and use Dev phone 1?

public class Utils 
   public static long getThreadId()
      Thread t = Thread.currentThread();
      return t.getId();

   public static String getThreadSignature()
      Thread t = Thread.currentThread();
      long l = t.getId();
      String name = t.getName();
      long p = t.getPriority();
      String gname = t.getThreadGroup().getName();
      return (name 
            + ":(id)" + l 
            + ":(priority)" + p
            + ":(group)" + gname);
   public static void logThreadSignature()
      Log.d("ThreadUtils", getThreadSignature());
   public static void sleepForInSecs(int secs)
         Thread.sleep(secs * 1000);
      catch(InterruptedException x)
         throw new RuntimeException("interrupted",x);

How to take a snapshot on an android device

30) How to use PendingIntent


How to use PendingIntent

31) How to use toast


How to use toast

ScrollView is an essential component in any UI framework. Understanding and mastering this component is essential. At the point I wrote this all I needed was to scroll a text view. It looks like Android allows TextView to scroll by itself without the help of embedding it in a ScrollView control. For now you can use this document to understand how to scroll a TextView without the the help of a ScrollView. Perhaps in the future this document will be expanded for a broader coverage of ScrollView.

In search of pen based tablets

34) intent filters and uris


intent filters and uris

private Word getParceledWordFromIntent()
    Intent i = this.getIntent();
    if (i == null)        {
        throw new RuntimeException("Sorry no intent found");
    //intent is available
    String wordId = i.getStringExtra(WORD_ID);
    ParseObjectWrapper pow = 
    Word parceledWord = new Word(pow);
    if (parceledWord == null) {
        throw new RuntimeException("ParceledWord not found");
    return parceledWord;

I was scratching my head for a minute why Eclipse tells me there is dead code. I tell you, the mistakes I make...

36) Key conferences


Key conferences

37) Key processing


Key processing

A little bit about layout inflater. loading layouts dynamically.

I am participating in a panel at Jacksonvile Architectre SIG

Here is the link


Mobile display of web pages

41) More notes on layouts


More notes on layouts

More on Android Alarm Manager, 2014

43) motorola droid


motorola droid

44) Motorola Xoom WiFi


Motorola Xoom WiFi

You will find here my experience using Galaxy S4 from Samsung. You will also find things like how to create wi-fi hotsport or tether it to a computer etc.

46) New XML file wizard


New XML file wizard

47) NFC and Android


NFC and Android

The quick answer seem to point to Jackson/JSON/REST. One can use GSON/JSON/REST if performance is not an issue.

If you are using SOAP, ksoap seems to be up there but there is a commercial like wsclient++ that seems pretty nice on first looks

Pro Android 2 is a detailed look at (java based) application development on Google's Mobile OS published by APress. The book is written by Sayed Hashimi, Satya Komatineni., and Dave MacLean. This book covers the Android API all the way to its current public release which is 2.1.

You can read more at this link.

It is finally here!!

Pro Android is a detailed look at application development on Google's Mobile OS published by APress. The book is written by Sayed Hashimi and Satya Komatineni. I am later of those two. This book covers the Android API all the way to its current public release which is 1.5.

You can read more about this at this link.

Contains notes on

Intent Filters
Intent Filter Rules
Old references on Intents
API references

Progressive and Responsive Design by Chiu-ki Chan

Publishing your app to the market

Research log on understand Custom attributes

56) Saving an activity state


Saving an activity state

If you have looked at Scatch it is pretty cool. Looks like a similar idea with some common ancestry is being applied for android development. Checkout App Inventor

Security and cell phone development

Security and permissions

60) So KitKat is here now


So KitKat is here now

So you want an Investor!!!

62) Summarize Android FAQs


Summarize Android FAQs

63) Testing Android Apps


Testing Android Apps

Thanks again for those that have sent me the emails. The first set of printed books are out and available on Amazon now.

I am in the process of working with the publisher to mail the free books to those that have requested it here. They are not mailed yet.

I will keep you posted here as soon as they are mailed out.

Thanks again for your interest.

Click here for the complete message.

Under auspecies of IndoUS Chamber of Commerce, I have conducated a one day on-boarding session for the Android SDK. The details of what it is, who attended can be found at

I am planning to conduct more of these sessions at various local companies and universities. Send me an email if you are interested in participating or if you would like to host one of these.

66) The future of Android


The future of Android

thought stream: dreamforce

68) titanium appcenture


titanium appcenture

69) Titanium Mobile


Titanium Mobile

Understand Git Hub: it is becoming the essential component of your toolkit

Understand library projects

72) Using Android Market


Using Android Market

73) Using spinneradapter


Using spinneradapter

Here is the tentative TOC for the book

01. Custom Views 
02. Compound Views 
03. Custom Layouts 
04. Using JSON for On-Device Persistence 
05. Programming for multiple devices 
06. Apps Security Techniques/Patterns 
07. Table Views/Scoll View Techniques 

08. Advanced Debugging and Analysis 
09. Programming in OpenGL ES 2.0 for Android
10. Android Search User Experience 
11. Android Search Providers 
12. Android Search Custom Providers

13. Using the Telephony API 
14. Near Field Communication (NFC) 
15. Google Cloud Messaging for Android 
16. Cloud storage for Applications: 
17. PhoneGap 

18. JQuery Mobile 
19. Enterprise Security 

//Last 5
20. Monetization Techniques 
21. App Performance Optimization and Tuning 
22. Couch DB 
23. Bluetooth APIs 
24. IBM Worklight Mobile Platform 

With all the recent talk about Android KitKat, I thought I was late to the party. So I went looking today. Still there is not much in it. I took the opportunity anyway to quickly summarize the API changes that are probably worth noting for an Android developer. Here is that search trace below. You will high level features by each of the sub JellyBean releases and I have also listed all the changed/new APIs in a single list for all of 4.x releases so far at the end.

what are android live folders?

77) What are APNs?


What are APNs?

78) what are sdk tools?


what are sdk tools?

what are the various git respository names that comprise android source as of 4.0

Before I deluge you with more, here is an anagram that took me an hour to solve (I suspect ample incompeteny on my part and rather than any attributable inherent merit to the anagram itself)

"Bit Yokel"

When scrambled around would make a single word.

Now the rest of Ramayan(Western readers shoudl substitue Odyssey):

I wrote the following in about 2 hours (Thanks to notepad, Corona, drone of Carribbean Chutney and rarely-witnessable-anywhereelse hospitality of my brother-in-law Mikey):

This is a jumble solver using a single web page (even that, a single page blog where I otherwise perorate profusely)

I can use this page to solve

1. jumble
2. unscramble
3. anagrams

Anyways I have started porting this to Android and if you have one of those devices (primarily phones) you can install it from the following URL if you point your mobile web browser (On tablet it just looks wastefully big...)

This is still a work in progress as i get bored....

it is satisfactory enough to temporarily lull my curiosity....

Yes. Do send me an email if you use it and what you would like to see immediately improved...


Like any other free software on the net, please use caution and your own judgement to download and use.

What is a good Map to use for writing Registries

82) What is an OTA Server?


What is an OTA Server?

83) what is android cupcake?


what is android cupcake?

84) What is Android NDK?


What is Android NDK?

What is android:allowbackup?

What is API level and how is it used?

87) what is DDMS?


what is DDMS?

What is Dithering, Blending, Anti-aliasing?

What is electric-cloud and its competitors?

90) What is Genymotion?


What is Genymotion?

91) What is min sdk version


What is min sdk version

92) What is renderscript?


What is renderscript?

93) What is robolectric?


What is robolectric?

94) What is squirrelfish?


What is squirrelfish?

What is the add on feature and how does it work?

what is the android tool?

what is the uses-library tag?

98) what is titanium?


what is titanium?

99) what is xmlvm?


what is xmlvm?

What other UI libraries are there for Android?

Whats up with AnDevCon III

102) whats up with android 1.5


whats up with android 1.5

103) whats up with Jelly Bean?


whats up with Jelly Bean?

104) Why I like Nest Labs?


When I pay attention to the subtle messages that I come across daily, I notice that certain sounds, conversations, smells, or news put me in a better state, at least momentarily.

There is something about these cues that is not obvious. I will try to analyze one of these cues to see if there shows up a pattern.

One such cue was when I read that Google bought Nest Labs. I know very little about Nest Labs or their products. Why did I receive that news, (quite unconciously albeit) so favorbly while I have ignored or cringed at so many other web or other startups.

Here are a few things, I suspect, I am responding to unconsciously.

First of those is the name Nest Labs. I always liked nests! Yes. literally the bird nests. I have always liked labs. The places where talented people role their sleeves up, burn the night candles to their end, to create value beyond themselves. The idea of a "nest" also appealed to my humility, small, manageable, cozy, yet their products show a superb refinement, cosmopolitan, an understatement that is to my liking.

Fellowship is a big motivating factor if I dig down into my soul. This is not to pay homage to community over the individual but really for the individual to draw power from the fellowship both to survive and grow. A sufficiently, or enormously, sustainable model that let artists flourish and create. We are all artists. Irrespective of how we describe what we do we are all in search of beatuy to satisfy the craving soul. As a collective the fellowship must produce value which will turn into money. Providing this framework of business relentlessly focusing on value creation while providing a safe long lasting productive environment for the people that work there.

The puzzle to the individual is he has time and desire to contribute and grow. However he lacks the framework to bring in others to make that into a reality. This needs a business model to channel, while leaving room for meandering, to convert that energy towards creating meaningful products.

From the myriad directions various efforts could go, a business is there to converge and craft value by selecting what is of most value. Business is a place that packages this value as a sellable unit.

When beautiful products come out of a company it is not by happenstance. It is a result of extraordinary care and concern and being the creators closely connected to the production.

Perhaps subtler things I have missed to articulate....

Why is x86 support important?

Natively Android supports XML parisng using SAX/DOM using a class caleld XMLPullParser. This doesn't seem to support XSDs, or DTDs, or Relax NG. There are no native recommendations for XSDs.

An open source product called woodstax seem to support relaxng and DTDs but no w3cschema yet.

There seem to be possible to port xerces of Apache by importings its jar into your android project and then use its XSD support.