At a recent Google Developer Group meeting we worked up a list of resources to help us learn about Android development.

Your browser does not support the audio element.

autoplay

One resource was red dit. They have an android development list. This list has over nine thousand readers. <break time="1s"/>Red dit allows voting on posts. You see the top post has one hundred and twenty votes. <break time="1s"/>

Your browser does not support the audio element.

autoplay

And here is this top post. It is a big block of text for you to read.

Your browser does not support the audio element.

autoplay

It discusses the software development kit, and the native development kit. Then it provides a link to the official Android tutorial for setting up Eclipse. <break time="2s"/>

Your browser does not support the audio element.

autoplay

I think all this reading is a barrier to entry. Given a tool which can explain things with pictures and spoken words, it becomes much easier to have a show and tell.

Your browser does not support the audio element.

autoplay

So lets use this tool, slide speech, to give an introduction to android.

Your browser does not support the audio element.

autoplay

The first thing to observe is that we do pretty much the same thing as the author of the red dit post. We just type the introduction.

Your browser does not support the audio element.

autoplay

We can use screen shots to show things and words typed into the speaker notes of the slides to tell about them. <break time="2s"/>It comes out like this.

Your browser does not support the audio element.

autoplay

Android has two development kits. The SDK or software development kit. And the NDK or Native Development kit. <break time="1s"/>

Your browser does not support the audio element.

autoplay

With the SDK you develop using Java. The Java is then interpreted by the virtual machine to run native code.

Your browser does not support the audio element.

autoplay

With the NDK you develop using C or C sharp. So you are writing native code. <break time="1s"/>

Your browser does not support the audio element.

autoplay

So with Java, you work at a higher level and make use of libraries. With native code, you are writing libraries, such as the open graphics library, open GL. <break time="1s"/>

Your browser does not support the audio element.

autoplay

Development speed is faster with Java. Native code does not require the virtual machine, so it can run faster. <break time="1s"/>

Your browser does not support the audio element.

autoplay

The official site, developer dot android.com, has instructions for installing the SDK.

Your browser does not support the audio element.

autoplay

The last thing the red dit introduction does, before launching into a line by line code review, is link to this image. <break time="1s"/>They do not bother to explain it. <break time="1s"/>They just say it is handy. <break time="1s"/>

Your browser does not support the audio element.

autoplay

With Slide Speech, we can step through this flow chart. Explain how the on create function works to initialize an activity. <break time="1s"/>

Your browser does not support the audio element.

autoplay

How the on start function contains code relevant to an activity which may have been idle and is now restarting. <break time="1s"/>

Your browser does not support the audio element.

autoplay

How the on resume function is for an activity which paused when another application came to the foreground. For example, when the phone rings in the middle of a game. <break time="1s"/>

Your browser does not support the audio element.

autoplay

And so on. <break time="1s"/>This provides a much more helpful explanation, don’t you think?

Your browser does not support the audio element.

autoplay

You be the judge. Do we have a winner? Give your applause to the approach you like better. <break time="1s"/>