Android 101 workshop
Getting started with Android development
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
Agenda
●   The Setup
●   Hello Android
●   AndroidManifest.xml
●   Intents
●   Views
●   Respond to user-interaction
●   Using libraries
●   Hands on
The Setup
Platform of choice

Linux
Mac
Windows
Android
The Setup
      Development Environment

      http://eclipse.org


      https://www.jetbrains.com/idea


      AIDE
      https://play.google.com/store/apps/details?
      id=com.aide.ui
The Setup
Android SDK




https://developer.android.com/sdk/index.html
Hello Android
AndroidManifest.xml




https://developer.android.com/
     guide/topics/manifest/
                manifest-intro.html
AndroidManifest.xml
<manifest>
                                       <activity-alias>
    <uses-permission />                    <intent-filter> . . . </intent-filter>
    <permission />                         <meta-data />
    <permission-tree />                </activity-alias>
    <permission-group />
    <instrumentation />                <service>
    <uses-sdk />                           <intent-filter> . . . </intent-filter>
    <uses-configuration />                 <meta-data/>
    <uses-feature />                   </service>
    <supports-screens />
    <compatible-screens />             <receiver>
    <supports-gl-texture />                <intent-filter> . . . </intent-filter>
                                           <meta-data />
    <application>                      </receiver>

        <activity>                     <provider>
            <intent-filter>                <grant-uri-permission />
                <action />                 <meta-data />
                <category />           </provider>
                <data />
            </intent-filter>           <uses-library />
            <meta-data />
        </activity>               </application>

                               </manifest>
AndroidManifest.xml
<manifest>
                                          <activity-alias>
    <uses-permission />                       <intent-filter> . . . </intent-filter>
    <permission />                            <meta-data />
    <permission-tree />                   </activity-alias>
    <permission-group />
    <instrumentation />                   <service>
    <uses-sdk />                              <intent-filter> . . . </intent-filter>
<manifest xmlns:android= "http://schemas.android.
    <uses-configuration />                    <meta-data/>
    <uses-feature />                      </service>
com/apk/res/android"
    <supports-screens />
  android:installLocation="auto" <receiver>
    <compatible-screens />
                                     <intent-filter> . . . </intent-filter>
    <supports-gl-texture />
  package="my.package.name"          <meta-data />
                                 </receiver>
  android:versionCode="42"
   <application>

  android:versionName="theLifeTheUniverseAndEverything-Beta"
       <activity>                <provider>
           <intent-filter>           <grant-uri-permission />
>              <action />            <meta-data />
                <category />              </provider>
                <data />
            </intent-filter>              <uses-library />
            <meta-data />
        </activity>                  </application>

                                  </manifest>
AndroidManifest.xml
<manifest>
                                       <activity-alias>
    <uses-permission />                    <intent-filter> . . . </intent-filter>
    <permission />                         <meta-data />
    <permission-tree />                </activity-alias>
    <permission-group />
    <instrumentation />                <service>
    <uses-sdk />                           <intent-filter> . . . </intent-filter>
    <uses-configuration />                 <meta-data/>
                                       </service>
    <uses-feature />
                      <uses-permission />
    <supports-screens />
    <compatible-screens />             <receiver>
    <supports-gl-texture />                <intent-filter> . . . </intent-filter>
                                           <meta-data />
    <application>                      </receiver>

        <activity>                     <provider>
            <intent-filter>                <grant-uri-permission />
                <action />                 <meta-data />
                <category />           </provider>
                <data />
            </intent-filter>           <uses-library />
            <meta-data />
        </activity>               </application>

                               </manifest>
AndroidManifest.xml
<manifest>
                                       <activity-alias>
    <uses-permission />                    <intent-filter> . . . </intent-filter>
    <permission />                         <meta-data />
    <permission-tree />                </activity-alias>
    <permission-group />
    <instrumentation />                <service>
    <uses-sdk />                           <intent-filter> . . . </intent-filter>
                                           <meta-data/>




                                                                           !
    <uses-configuration />
                                       </service>
    <uses-feature />
                      <uses-permission />
    <supports-screens />
    <compatible-screens />             <receiver>
    <supports-gl-texture />                <intent-filter> . . . </intent-filter>
                                           <meta-data />
    <application>                      </receiver>

        <activity>                     <provider>
            <intent-filter>                <grant-uri-permission />
                <action />                 <meta-data />
                <category />           </provider>
                <data />
            </intent-filter>           <uses-library />
            <meta-data />
        </activity>               </application>

                               </manifest>
AndroidManifest.xml
<manifest>
                                                  <activity-alias>
    <uses-permission />                               <intent-filter> . . . </intent-filter>
    <permission />                                    <meta-data />
    <permission-tree />         <activity>        </activity-alias>
    <permission-group />
    <instrumentation />
                                  <intent-filter>
                                             <service>
    <uses-sdk />                    <action /> <intent-filter>
                                                 <meta-data/>
                                                                     . . . </intent-filter>
    <uses-configuration />
    <uses-feature />                <category />
                                             </service>
    <supports-screens />
    <compatible-screens />
                                    <data /> <receiver>
    <supports-gl-texture />       </intent-filter>
                                                 <intent-filter>     . . . </intent-filter>
                                                 <meta-data />
    <application>
                                  <meta-data </receiver>
                                              />
                               </activity>   <provider>
        <activity>
            <intent-filter>                           <grant-uri-permission />
                <action />                            <meta-data />
                <category />                      </provider>
                <data />
            </intent-filter>                      <uses-library />
            <meta-data />
        </activity>                          </application>

                                          </manifest>
AndroidManifest.xml
<manifest>
                                                  <activity-alias>
    <uses-permission />                               <intent-filter> . . . </intent-filter>
    <permission />                                    <meta-data />
    <permission-tree />         <activity>        </activity-alias>
    <permission-group />
    <instrumentation />
                                  <intent-filter>
                                             <service>
    <uses-sdk />                    <action /> <intent-filter>
                                                 <meta-data/>
                                                                     . . . </intent-filter>




                                                                        !
    <uses-configuration />
    <uses-feature />                <category />
                                             </service>
    <supports-screens />
    <compatible-screens />
                                    <data /> <receiver>
    <supports-gl-texture />       </intent-filter>
                                                 <intent-filter>     . . . </intent-filter>
                                                 <meta-data />
    <application>
                                  <meta-data </receiver>
                                              />
                               </activity>   <provider>
        <activity>
            <intent-filter>                           <grant-uri-permission />
                <action />                            <meta-data />
                <category />                      </provider>
                <data />
            </intent-filter>                      <uses-library />
            <meta-data />
        </activity>                          </application>

                                          </manifest>
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.
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.
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.
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.
Intent
Views
<?xml version ="1.0" encoding ="utf-8"?>
<LinearLayout xmlns:android ="http://schemas.android.com/apk/res/android"
    android:layout_width ="fill_parent"
    android:layout_height ="fill_parent"
    android:paddingLeft ="16dp"
    android:paddingRight ="16dp"
    android:orientation ="vertical" >
    <EditText
        android:layout_width ="fill_parent"
        android:layout_height ="wrap_content"
        android:hint ="@string/to" />
    <EditText
        android:layout_width ="fill_parent"
        android:layout_height ="wrap_content"
        android:hint ="@string/subject" />
    <EditText
        android:layout_width ="fill_parent"
        android:layout_height ="0dp"
        android:layout_weight ="1"
        android:gravity ="top"
        android:hint ="@string/message" />
    <Button
        android:layout_width ="100dp"
        android:layout_height ="wrap_content"
        android:layout_gravity ="right"
        android:text ="@string/send" />
</LinearLayout>
Views

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


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




            ●   Support Library
            ●   android-json-rpc
            ●   oauth-signpost
            ●   greenDAO
            ●   GSON
            ●   ...
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
Questions
Get your keyboards
     clicking!
Thank you
Benjamin Weiss
http://gplus.to/keyboardsurfer
Twitter: @keyboardsurfer
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

More Related Content

PPTX
Project task duration estimation
PPTX
Application Context and Discovering XSS without
PDF
Designing a new user interface for open source projects
PPT
Testing of Object-Oriented Software
PPTX
Software Fault, Error, and Failure
PDF
Different Software Testing Levels for Detecting Errors
PDF
Android life cycle
PDF
MICG - Strategy and Risk Management for MTU Services
Project task duration estimation
Application Context and Discovering XSS without
Designing a new user interface for open source projects
Testing of Object-Oriented Software
Software Fault, Error, and Failure
Different Software Testing Levels for Detecting Errors
Android life cycle
MICG - Strategy and Risk Management for MTU Services

Viewers also liked (15)

PDF
Forecasting total cost and duration of Product Backlog
PPTX
Android activity lifecycle
PDF
Intent in android
PPTX
Object oriented testing
PDF
Pre-Con Ed: Test Data Management and Compliance: Is your Test Data Ready for ...
PDF
Android: Intent, Intent Filter, Broadcast Receivers
PDF
Lecture 2 Software Engineering and Design Object Oriented Programming, Design...
PPTX
Introduction to White box testing
PPTX
structured programming
PPTX
Understanding android security model
PDF
structured programming Introduction to c fundamentals
PPT
ABAP Event-driven Programming &Selection Screen
PDF
Testing Plan Test Case
PPT
Hirarc
PPT
Risk-management
Forecasting total cost and duration of Product Backlog
Android activity lifecycle
Intent in android
Object oriented testing
Pre-Con Ed: Test Data Management and Compliance: Is your Test Data Ready for ...
Android: Intent, Intent Filter, Broadcast Receivers
Lecture 2 Software Engineering and Design Object Oriented Programming, Design...
Introduction to White box testing
structured programming
Understanding android security model
structured programming Introduction to c fundamentals
ABAP Event-driven Programming &Selection Screen
Testing Plan Test Case
Hirarc
Risk-management
Ad

Similar to Android 101 workshop (20)

PDF
Hello android
PDF
Ch2 first app
PDF
One APK to rule them all
PDF
Open Intents - Android Intents Mechanism and Dependency Management
PPT
Android Introduction
PPTX
Android101 - Intro and Basics
PDF
Androidoscon20080721 1216843094441821-9
PDF
Androidoscon20080721 1216843094441821-9
PDF
Introduction toandroid
PPT
Ruby conf2012
PDF
Getting Started With Android Library Projects
PDF
Native Android Development Practices
PPT
Introduction to android
PDF
Software Analytics for Mobile Applications – Insights & Lessons Learned [CSMR...
PDF
Android Jump Start
PDF
Java For Mobile Devices – Building a client application for the Android platform
PDF
Java For Mobile Devices – Building a client application for the Android platform
PDF
Android intro 2010
PDF
AndroidManifest
PPTX
Android application development fundamentals
Hello android
Ch2 first app
One APK to rule them all
Open Intents - Android Intents Mechanism and Dependency Management
Android Introduction
Android101 - Intro and Basics
Androidoscon20080721 1216843094441821-9
Androidoscon20080721 1216843094441821-9
Introduction toandroid
Ruby conf2012
Getting Started With Android Library Projects
Native Android Development Practices
Introduction to android
Software Analytics for Mobile Applications – Insights & Lessons Learned [CSMR...
Android Jump Start
Java For Mobile Devices – Building a client application for the Android platform
Java For Mobile Devices – Building a client application for the Android platform
Android intro 2010
AndroidManifest
Android application development fundamentals
Ad

Recently uploaded (20)

PPTX
Benefits of Physical activity for teenagers.pptx
PPTX
Modernising the Digital Integration Hub
PDF
1 - Historical Antecedents, Social Consideration.pdf
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PPTX
Chapter 5: Probability Theory and Statistics
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPT
Geologic Time for studying geology for geologist
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
OpenACC and Open Hackathons Monthly Highlights July 2025
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PPTX
2018-HIPAA-Renewal-Training for executives
PDF
Five Habits of High-Impact Board Members
PPT
Module 1.ppt Iot fundamentals and Architecture
PPT
What is a Computer? Input Devices /output devices
Benefits of Physical activity for teenagers.pptx
Modernising the Digital Integration Hub
1 - Historical Antecedents, Social Consideration.pdf
Final SEM Unit 1 for mit wpu at pune .pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Chapter 5: Probability Theory and Statistics
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Geologic Time for studying geology for geologist
A review of recent deep learning applications in wood surface defect identifi...
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Developing a website for English-speaking practice to English as a foreign la...
Enhancing emotion recognition model for a student engagement use case through...
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
A comparative study of natural language inference in Swahili using monolingua...
OpenACC and Open Hackathons Monthly Highlights July 2025
NewMind AI Weekly Chronicles – August ’25 Week III
2018-HIPAA-Renewal-Training for executives
Five Habits of High-Impact Board Members
Module 1.ppt Iot fundamentals and Architecture
What is a Computer? Input Devices /output devices

Android 101 workshop

  • 1. Android 101 workshop Getting started with Android development
  • 2. 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
  • 3. Agenda ● The Setup ● Hello Android ● AndroidManifest.xml ● Intents ● Views ● Respond to user-interaction ● Using libraries ● Hands on
  • 4. The Setup Platform of choice Linux Mac Windows Android
  • 5. The Setup Development Environment http://eclipse.org https://www.jetbrains.com/idea AIDE https://play.google.com/store/apps/details? id=com.aide.ui
  • 8. AndroidManifest.xml https://developer.android.com/ guide/topics/manifest/ manifest-intro.html
  • 9. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> </activity-alias> <permission-group /> <instrumentation /> <service> <uses-sdk /> <intent-filter> . . . </intent-filter> <uses-configuration /> <meta-data/> <uses-feature /> </service> <supports-screens /> <compatible-screens /> <receiver> <supports-gl-texture /> <intent-filter> . . . </intent-filter> <meta-data /> <application> </receiver> <activity> <provider> <intent-filter> <grant-uri-permission /> <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 10. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> </activity-alias> <permission-group /> <instrumentation /> <service> <uses-sdk /> <intent-filter> . . . </intent-filter> <manifest xmlns:android= "http://schemas.android. <uses-configuration /> <meta-data/> <uses-feature /> </service> com/apk/res/android" <supports-screens /> android:installLocation="auto" <receiver> <compatible-screens /> <intent-filter> . . . </intent-filter> <supports-gl-texture /> package="my.package.name" <meta-data /> </receiver> android:versionCode="42" <application> android:versionName="theLifeTheUniverseAndEverything-Beta" <activity> <provider> <intent-filter> <grant-uri-permission /> > <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 11. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> </activity-alias> <permission-group /> <instrumentation /> <service> <uses-sdk /> <intent-filter> . . . </intent-filter> <uses-configuration /> <meta-data/> </service> <uses-feature /> <uses-permission /> <supports-screens /> <compatible-screens /> <receiver> <supports-gl-texture /> <intent-filter> . . . </intent-filter> <meta-data /> <application> </receiver> <activity> <provider> <intent-filter> <grant-uri-permission /> <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 12. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> </activity-alias> <permission-group /> <instrumentation /> <service> <uses-sdk /> <intent-filter> . . . </intent-filter> <meta-data/> ! <uses-configuration /> </service> <uses-feature /> <uses-permission /> <supports-screens /> <compatible-screens /> <receiver> <supports-gl-texture /> <intent-filter> . . . </intent-filter> <meta-data /> <application> </receiver> <activity> <provider> <intent-filter> <grant-uri-permission /> <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 13. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> <activity> </activity-alias> <permission-group /> <instrumentation /> <intent-filter> <service> <uses-sdk /> <action /> <intent-filter> <meta-data/> . . . </intent-filter> <uses-configuration /> <uses-feature /> <category /> </service> <supports-screens /> <compatible-screens /> <data /> <receiver> <supports-gl-texture /> </intent-filter> <intent-filter> . . . </intent-filter> <meta-data /> <application> <meta-data </receiver> /> </activity> <provider> <activity> <intent-filter> <grant-uri-permission /> <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 14. AndroidManifest.xml <manifest> <activity-alias> <uses-permission /> <intent-filter> . . . </intent-filter> <permission /> <meta-data /> <permission-tree /> <activity> </activity-alias> <permission-group /> <instrumentation /> <intent-filter> <service> <uses-sdk /> <action /> <intent-filter> <meta-data/> . . . </intent-filter> ! <uses-configuration /> <uses-feature /> <category /> </service> <supports-screens /> <compatible-screens /> <data /> <receiver> <supports-gl-texture /> </intent-filter> <intent-filter> . . . </intent-filter> <meta-data /> <application> <meta-data </receiver> /> </activity> <provider> <activity> <intent-filter> <grant-uri-permission /> <action /> <meta-data /> <category /> </provider> <data /> </intent-filter> <uses-library /> <meta-data /> </activity> </application> </manifest>
  • 15. 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.
  • 16. 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.
  • 17. 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.
  • 18. 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.
  • 20. Views <?xml version ="1.0" encoding ="utf-8"?> <LinearLayout xmlns:android ="http://schemas.android.com/apk/res/android" android:layout_width ="fill_parent" android:layout_height ="fill_parent" android:paddingLeft ="16dp" android:paddingRight ="16dp" android:orientation ="vertical" > <EditText android:layout_width ="fill_parent" android:layout_height ="wrap_content" android:hint ="@string/to" /> <EditText android:layout_width ="fill_parent" android:layout_height ="wrap_content" android:hint ="@string/subject" /> <EditText android:layout_width ="fill_parent" android:layout_height ="0dp" android:layout_weight ="1" android:gravity ="top" android:hint ="@string/message" /> <Button android:layout_width ="100dp" android:layout_height ="wrap_content" android:layout_gravity ="right" android:text ="@string/send" /> </LinearLayout>
  • 21. Views public class OneOhOneDemo extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } ... }
  • 22. Views
  • 23. User interaction someView.setOnClickListener(new OnClickListener() { public void onClick(View view) { //handle event } });
  • 25. Libraries ● Support Library ● android-json-rpc ● oauth-signpost ● greenDAO ● GSON ● ...
  • 28. Get your keyboards clicking!
  • 30. 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