Slide 1

Slide 1 text

Android 101 workshop Getting started with Android development

Slide 2

Slide 2 text

Benjamin Weiss http://gplus.to/keyboardsurfer Twitter: @keyboardsurfer Senior Software Developer at ImmobilienScout24 Organizer: GDG Android in Berlin Co-Organizer: ● Global Android Dev Camp ● GTUG Community Weekend ● Google I/O Extended Berlin 2012 ● DevFest Berlin 2012

Slide 3

Slide 3 text

Agenda ● The Setup ● Hello Android ● AndroidManifest.xml ● Intents ● Views ● Respond to user-interaction ● Using libraries ● Hands on

Slide 4

Slide 4 text

The Setup Platform of choice Linux Mac Windows Android

Slide 5

Slide 5 text

The Setup Development Environment http://eclipse.org https://www.jetbrains.com/idea AIDE https://play.google.com/store/apps/details? id=com.aide.ui

Slide 6

Slide 6 text

The Setup Android SDK https://developer.android.com/sdk/index.html

Slide 7

Slide 7 text

Hello Android

Slide 8

Slide 8 text

AndroidManifest.xml https://developer.android.com/ guide/topics/manifest/ manifest-intro.html

Slide 9

Slide 9 text

AndroidManifest.xml . . . . . . . . .

Slide 10

Slide 10 text

AndroidManifest.xml . . . . . . . . .

Slide 11

Slide 11 text

AndroidManifest.xml . . . . . . . . .

Slide 12

Slide 12 text

AndroidManifest.xml . . . . . . . . . !

Slide 13

Slide 13 text

AndroidManifest.xml . . . . . . . . .

Slide 14

Slide 14 text

AndroidManifest.xml . . . . . . . . . !

Slide 15

Slide 15 text

Intent An intent is an abstract description of an operation to be performed. It can be used with startActivity to launch an Activity, broadcastIntent to send it to any interested BroadcastReceiver components, and startService(Intent) or bindService(Intent, ServiceConnection, int) to communicate with a background Service.

Slide 16

Slide 16 text

Intent An intent is an abstract description of an operation to be performed. It can be used with startActivity to launch an Activity, broadcastIntent to send it to any interested BroadcastReceiver components, and startService(Intent) or bindService(Intent, ServiceConnection, int) to communicate with a background Service.

Slide 17

Slide 17 text

Intent An Intent provides a facility for performing late runtime binding between the code in different applications. Its most significant use is in the launching of activities, where it can be thought of as the glue between activities. It is basically a passive data structure holding an abstract description of an action to be performed.

Slide 18

Slide 18 text

Intent An Intent provides a facility for performing late runtime binding between the code in different applications. Its most significant use is in the launching of activities, where it can be thought of as the glue between activities. It is basically a passive data structure holding an abstract description of an action to be performed.

Slide 19

Slide 19 text

Intent

Slide 20

Slide 20 text

Views

Slide 21

Slide 21 text

Views public class OneOhOneDemo extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } ... }

Slide 22

Slide 22 text

Views

Slide 23

Slide 23 text

User interaction someView.setOnClickListener(new OnClickListener() { public void onClick(View view) { //handle event } });

Slide 24

Slide 24 text

Libraries

Slide 25

Slide 25 text

Libraries ● Support Library ● android-json-rpc ● oauth-signpost ● greenDAO ● GSON ● ...

Slide 26

Slide 26 text

Important links https://developer.android.com https://developer.android.com/sdk/index.html https://developer.android.com/guide/components/index.html https://developer.android.com/training/basics/firstapp/index.html https://stackoverflow.com http://www.openintents.org/en/libraries

Slide 27

Slide 27 text

Questions

Slide 28

Slide 28 text

Get your keyboards clicking!

Slide 29

Slide 29 text

Thank you Benjamin Weiss http://gplus.to/keyboardsurfer Twitter: @keyboardsurfer

Slide 30

Slide 30 text

Image Sources ● http://www.devfest.info/images/vhabig.png ● https://en.wikipedia.org/wiki/Linux ● https://en.wikipedia.org/wiki/Windows ● https://en.wikipedia.org/wiki/Windows ● https://d.android.com ● http://www.eclipse.org/artwork/ ● https://www.jetbrains.com/img/logos/logo_intellij_idea.gif ● https://play.google.com/store/apps/details?id=com.aide.ui ● https://developer.android.com/sdk/index.html ● https://developer.android.com/reference/packages.html ● https://developer.android.com/guide/topics/ui/layout/linear.html ● http://curiousexpeditions.org/?p=78 ● http://actionbarsherlock.com ● https://code.google.com/p/roboguice ● http://marie-schweiz.de