SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Downloaden Sie, um offline zu lesen
Introduction To Android                                                           Bantyder Bahru
                                                                                      GDG-Addis
March 30, 2013                                                                          ICE Addis


Introduction
Android Overview

Android is a comprehensive open source platform designed for mobile devices. It is championed
by Google and owned by Open Handset Alliance. The goal of the alliance is to “accelerate
innovation in mobile and offer consumers a richer, less expensive, and better mobile
experience.” Android is the vehicle to do so.

        In 2005, Google buys Android, Inc. The world thinks a “gPhone” is about to come out.
        In 2007, the Open Handset Alliance is announced. Android is officially open sourced.
        In 2008, the Android SDK 1.0 is released. The G1 phone, manufactured by HTC and
         sold by the wireless carrier T-Mobile USA, follows shortly afterward.
        2009 sees a proliferation of Android-based devices. New versions of the operating
         system are released: Cupcake (1.5), Donut (1.6), and Eclair (2.0 and 2.1). More than 20
         devices run Android.
        In 2010, Android is second only to Blackberry as the best-selling smart phone platform.
         Froyo (Android 2.2) is released and so are more than 60 devices that run it.




Android Versions
Like any software, Android is improved over time, which is reflected in its version numbers.
However, the relationship between different version numbers can be confusing. Table 1-1 helps
explain that

       Android version            API level                       Nickname
       Android 1.0                1                               Android 1.0
       Android 1.1                2                               Android 1.1
       Android 1.5                3                               Cupcake
       Android 1.6                4                               Donut
       Android 2.0,2.01,2.1       5 ,6,7                          Eclair
       Android 2.2                8                               Froyo (frozen yogurt)
       Android 2.3,2.3.3          9,10                            Gingerbread
       Android 3.0 ,3.1,3.2       11,12,13                        Honeycomb
       Android 4.0,4.03           14,15                           Ice cream Sandwich
       Android 4.1,4.2            16,17                           Jelly Bean
Introduction To Android                                                                   Bantyder Bahru
                                                                                              GDG-Addis
March 30, 2013                                                                                  ICE Addis




How many Devices

“A big day for Android... 500 million devices activated globally, and over 1.3 million added
every single day," said Hugo Bara, Android's director of product management, in a Google+
post. It's not clear how many devices are replacing older ones, though. September 12, 2012




Why Android as developers

Security
Linux is a highly secure system, having been tried and tested through some very harsh
environments over the decades. Android heavily relies on Linux for security. All Android
applications run as separate Linux processes with permissions set by the Linux system. As
such, Android passes many security concerns to the underlying Linux system.

Features
Linux comes with a lot of very useful features. Android leverages many of them, such as support
for memory management, power management, and networking.

Application Framework
Contains application framework which provides numerous services to help you, the app
developer, get your job done. This is the best-documented and most extensively covered part of
the platform because it is this layer that empowers developers to get creative and bring fantastic
applications to the market.

Native Libraries
The native libraries are C/C++ libraries, often taken from the open source community in order to
provide necessary services to the Android application layer. Among others, they include:

                Webkit
                 A fast web-rendering engine used by Safari, Chrome, and other browsers
                SQLite
                 A full-featured SQL database
                Apache Harmony
                 An open source implementation of Java
                OpenGL
                 3D graphics libraries
                OpenSSL
                 The secure locket layer
Introduction To Android                                                          Bantyder Bahru
                                                                                     GDG-Addis
March 30, 2013                                                                         ICE Addis


Setting up your IDE


Quick configuration with Android Bundle
The Android SDK provides you the API libraries and developer tools necessary to build, test,
and debug apps for Android.

If you're a new Android developer, we recommend you download the ADT Bundle to quickly
start developing apps. It includes the essential Android SDK components and a version of the
Eclipse IDE with built-in ADT (Android Developer Tools) to streamline your Android app
development. With a single download, the ADT Bundle includes everything you need to begin
developing apps:


                Eclipse + ADT plugin
                Android SDK Tools
                Android Platform-tools
                The latest Android platform
                The latest Android system image for the emulator

How to configure
  1. Download ADT Bundle for your operating system from
      http://developer.android.com/sdk/index.html
  2. Unpack the ZIP file (named adt-bundle-<os_platform>.zip) and save it to an
      appropriate location, such as a "Development" directory in your home directory.
  3. Open the adt-bundle-<os_platform>/eclipse/ directory and launch eclipse.
Introduction To Android                                                                Bantyder Bahru
                                                                                           GDG-Addis
March 30, 2013                                                                               ICE Addis




USE AN EXISTING IDE
If you already have an IDE you want to use for Android app development, setting up a new SDK
requires that you download the SDK Tools, then select additional Android SDK packages to
install (such as the Android platform and system image). If you'll be using an existing version of
Eclipse, then you can add the ADT plugin to it.

How to configure

   1.    Download android SDK from http://dl.google.com/android/installer_r21.1-windows.exe
   2.    Start Eclipse, then select Help→Install New Software
   3.    In the Available Software dialog, click Add.
   4.    In the Add Site dialog that appears, enter a name for the remote site (for example,
   5.    “Android Plugin”) in the “Name” field.
   6.     In the “Location” field, enter this URL: https://dl-ssl.google.com/android/eclipse/
   7.    Click OK. Back in the Available Software view, you should now see “Developer Tools”
         added
   8.    To the list. Select the checkbox next to Developer Tools, which will automatically
   9.    Select the nested tools Android DDMS and Android Development Tools. Click Next.
   10.    In the resulting Install Details dialog, the Android DDMS and Android Development
   11.   Tools features are listed. Click Next to read and accept the license agreement and install any
         dependencies, then click Finish.
   12.   Restart Eclipse.
Introduction To Android                                                                 Bantyder Bahru
                                                                                            GDG-Addis
March 30, 2013                                                                                ICE Addis


Code Practice
Declaring Activity

   1. In Eclipse click File->New->Android Application Project
   2. Specify all required infrmation as shown below




   3. Click Next antil you reached activity creation step, and specify activity information as shown
      below
Introduction To Android                                               Bantyder Bahru
                                                                          GDG-Addis
March 30, 2013                                                              ICE Addis




       4.Click finish, your project will be created as shown below.
Introduction To Android                                                                                  Bantyder Bahru
                                                                                                             GDG-Addis
March 30, 2013                                                                                                 ICE Addis




   4. Open up the manifest file from the Package Explorer, and then click on the AndroidManifest.xml
       tab at the bottom to display the code that the IDE has produced.

       Within the <activity> element, find the following attributes:

       android:name=".MainActivity"
       android:label="@string/app_name"


   5. Edit the code so that it matches the following snippet:

       <activity
       android:name=".MainActivity"
       android:label="Welcome to Android Introduction"
       android:screenOrientation="portrait">
       ...
       </activity>

   6. To run your application you need to create android virtual device , to do so click “Android Virtual Device
      Manager” from task bar as shown in the figure below.




                 Android Virtual Device Manager
Introduction To Android                                                               Bantyder Bahru
                                                                                          GDG-Addis
March 30, 2013                                                                              ICE Addis

   7. You will be presented with virtual device manager as shown below




   8. Click New and create new emulator and start .
   9. Now close all the dialog except the emulator , and return to your Eclipse IDE
   10. To run your application click Run ->Run


Starting a new activity with an intent object

   1. Now from package explorer go to res->layout and open main.xml
   2. Next to </TextView> Insert button as shown below
       <Button
        android:id="@+id/callButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Call Log" />

   3. Save and close
   4. From package explorer got src and open MainActivity.java and put the following method at the
      end inside the class

       void startCallButton () {
Introduction To Android                                                                 Bantyder Bahru
                                                                                            GDG-Addis
March 30, 2013                                                                                ICE Addis

       Intent myIntent = new Intent();
       myIntent.setAction(Intent.ACTION_CALL_BUTTON);
       startActivity(myIntent);

   5. Insert button click event listener code show bellow in to onCreate() method next
      setContentView()

                 Button cButton=(Button)findViewById(R.id.callButton);
                 cButton.setOnClickListener(new View.OnClickListener() {

                          @Override
                          public void onClick(View arg0) {
                                 // TODO Auto-generated method stub
                                 startCallButton();

                          }
                 });




   6. Save the project and run,and click the button
   7. If this generates an error message, it may be that the correct libraries have not been imported.
      To use intents we have to import the relevant library, which can be done with import
      android.content.Intent; however it's easy to get Eclipse to import any missing libraries simply by
      pressing Shift + Ctrl + O.
Introduction To Android                                                                    Bantyder Bahru
                                                                                               GDG-Addis
March 30, 2013                                                                                   ICE Addis

Switching between activities

Often we will want to activate one activity from within another. Although this is not a difficult task, it
will require more setting up than the previous two recipes as it will need two activities to be declared in
the Manifest, a new Class to serve as our second activity, and a button along with a click listener to
perform the switch.

    1. Create a new activity in the same location as the original activity subclass to do so:

        Right Click on your project->click New->click other

        You will be presented with the following dialog box.




    2. Select Android Activity and click next ->next until you reach new activity dialog box and
         Activity Name- MySubActivity
        Layout Name – mysub
       And leave everything as it is and click finish.
Introduction To Android                                                                  Bantyder Bahru
                                                                                             GDG-Addis
March 30, 2013                                                                                 ICE Addis

   3. Next, we must add a button that the user can click on to switch activities. This is set up through
      the main.xml file which resides in the res/layout folder in the Package Explorer.
   4. Open the main.xml file and click on the XML tab at the bottom so that the code can be edited.
   5. Add the following <Button> element just after the call button from previous example y:

        <Button
        android:text="click to switch activities"
        android:id="@+id/main_activity_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
               </Button>
   6. Now open the original Java activity class,.
   7. Add the following code to the onCreate() method after the setContentView(R. layout.main);
      statement, making sure to replace the package and class parameters in the setClassName() call
      with your own, as they will most likely be different:

                    Button switchButton = (Button) findViewById(R.id.main_activity_button);
                    switchButton.setOnClickListener(new View.OnClickListener() {
                           @Override
                           public void onClick(View v) {
                                  Intent intent = new Intent();
                                  String packageName =
                                  "com.example.mysimpleapp ";
                                  String className =
                                  "com.example.mysimpleapp.MySubActivity";
                                  intent.setClassName(packageName, className);
                                  startActivity(intent);
                           }

                          });
   8. Run the application on a device or emulator. Clicking on the button will now start the sub
        activity.


Passing Data from one activity to another

   1. Create a new project with these project name PassDataActivity. Leave everything else
        as it is by default and click finish.
   2.   Open activity_main.xml and put EditText and Button as shown below.

        <EditText
             android:id="@+id/messageText"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:ems="10" >

             <requestFocus />
         </EditText>
Introduction To Android                                                                 Bantyder Bahru
                                                                                            GDG-Addis
March 30, 2013                                                                                ICE Addis


        <Button
            android:id="@+id/sendButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Send" />




   3. In the package explorer open MainActivity.java and add the following code to the onCreate()
       method after the setContentView(R. layout.main);

       Button mSendButton=(Button)findViewById(R.id.sendButton);
              mSendButton.setOnClickListener(new View.OnClickListener() {

                          @Override
                          public void onClick(View arg0) {
                                 // TODO Auto-generated method stub
                                 EditText
                                 MessageText=(EditText)findViewById(R.id.messageText);
                                 Intent intent= new Intent();

      intent.setClassName("com.example.passdataactivity","com.example.passdataactivi
   ty.SecondActivity");
                          intent.putExtra("com_example_passdataactivity_id",
   mMessageText.getText().toString());
                          startActivity(intent);

                          }
                 });

   4. Now time to create our second activity, add new activity and name it SecondActivity. Leave
      everything as it and click finish.

   5. From package explorer Open SecondActivity.java and add the following code to the onCreate()
       method after the setContentView(R. layout.main);

       String msg=getIntent().getExtras().getString("com_example_passdataactivity_id
       ");
              EditText msgView=new EditText(this);
              msgView.setText(msg);
              setContentView(msgView);


   6. Run the application on a device or an emulator.
Introduction To Android                           Bantyder Bahru
                                                      GDG-Addis
March 30, 2013                                          ICE Addis




Resources

   • ORielly Learning Android, Marko Gargenta
   • APress Beginning Android 4,Grant Allen
   • PACKT,Android 3.0 Application Development Cookbook,
     Kyle Merrifield Mew
   • http://developer.android.com

Weitere ähnliche Inhalte

Was ist angesagt?

Evolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s VersionsEvolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s Versionsijtsrd
 
Software training report
Software training reportSoftware training report
Software training reportNatasha Bains
 
"Android" mobilių programėlių kūrimo įvadas
"Android" mobilių programėlių kūrimo įvadas"Android" mobilių programėlių kūrimo įvadas
"Android" mobilių programėlių kūrimo įvadasTadas Jurelevičius
 
Day1 what is android(print)
Day1 what is android(print)Day1 what is android(print)
Day1 what is android(print)Dongchul Shin
 
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORM
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORMPERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORM
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORMIJNSA Journal
 
Droidcon2013 facebook sdk treacy
Droidcon2013 facebook sdk treacyDroidcon2013 facebook sdk treacy
Droidcon2013 facebook sdk treacyDroidcon Berlin
 
Android development Training Programme Day 2
Android development Training Programme Day 2Android development Training Programme Day 2
Android development Training Programme Day 2DHIRAJ PRAVIN
 
Android development training programme Day 1
Android development training programme Day 1Android development training programme Day 1
Android development training programme Day 1DHIRAJ PRAVIN
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of androidakila_mano
 
Review On Google Android a Mobile Platform
Review On Google Android a Mobile PlatformReview On Google Android a Mobile Platform
Review On Google Android a Mobile PlatformIOSR Journals
 

Was ist angesagt? (17)

Evolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s VersionsEvolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s Versions
 
Software training report
Software training reportSoftware training report
Software training report
 
"Android" mobilių programėlių kūrimo įvadas
"Android" mobilių programėlių kūrimo įvadas"Android" mobilių programėlių kūrimo įvadas
"Android" mobilių programėlių kūrimo įvadas
 
Day1 what is android(print)
Day1 what is android(print)Day1 what is android(print)
Day1 what is android(print)
 
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORM
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORMPERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORM
PERSONAL SAFETY TRIGGERING SYSTEM ON ANDROID MOBILE PLATFORM
 
Droidcon2013 facebook sdk treacy
Droidcon2013 facebook sdk treacyDroidcon2013 facebook sdk treacy
Droidcon2013 facebook sdk treacy
 
Android
AndroidAndroid
Android
 
Android development Training Programme Day 2
Android development Training Programme Day 2Android development Training Programme Day 2
Android development Training Programme Day 2
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android development training programme Day 1
Android development training programme Day 1Android development training programme Day 1
Android development training programme Day 1
 
Module 1
Module 1Module 1
Module 1
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
 
Android 4.1 Jellybean OS
Android 4.1 Jellybean OSAndroid 4.1 Jellybean OS
Android 4.1 Jellybean OS
 
Android
AndroidAndroid
Android
 
Review On Google Android a Mobile Platform
Review On Google Android a Mobile PlatformReview On Google Android a Mobile Platform
Review On Google Android a Mobile Platform
 
Android
AndroidAndroid
Android
 
Smt new (1)
Smt new (1)Smt new (1)
Smt new (1)
 

Andere mochten auch

Implantación de un servidor SOS en la IDE OTALEX C
Implantación de un servidor SOS en la IDE OTALEX CImplantación de un servidor SOS en la IDE OTALEX C
Implantación de un servidor SOS en la IDE OTALEX CJorge Sanz
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidbantyder
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 

Andere mochten auch (6)

Implantación de un servidor SOS en la IDE OTALEX C
Implantación de un servidor SOS en la IDE OTALEX CImplantación de un servidor SOS en la IDE OTALEX C
Implantación de un servidor SOS en la IDE OTALEX C
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 

Ähnlich wie Introduction to android

report A K Maurya.pdf
report A K Maurya.pdfreport A K Maurya.pdf
report A K Maurya.pdfSonu62614
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studioParinita03
 
AN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESAN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESIRJET Journal
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspectiveGunjan Kumar
 
Synopsis on android application
Synopsis on android applicationSynopsis on android application
Synopsis on android applicationJawed akhtar
 
Android and it’s applications
Android and it’s applicationsAndroid and it’s applications
Android and it’s applicationsamee yaami
 
ANDROID PPT_DAY1.ppt
ANDROID PPT_DAY1.pptANDROID PPT_DAY1.ppt
ANDROID PPT_DAY1.pptIssacPeter2
 
Unit 1-android-and-its-tools-ass
Unit 1-android-and-its-tools-assUnit 1-android-and-its-tools-ass
Unit 1-android-and-its-tools-assARVIND SARDAR
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating systemSalma Begum
 
Getting started with immersive technologies
Getting started with immersive technologiesGetting started with immersive technologies
Getting started with immersive technologiesUchechukwu Obimma
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.pptBijayKc16
 

Ähnlich wie Introduction to android (20)

report A K Maurya.pdf
report A K Maurya.pdfreport A K Maurya.pdf
report A K Maurya.pdf
 
Creating the first app with android studio
Creating the first app with android studioCreating the first app with android studio
Creating the first app with android studio
 
Android setup
Android setupAndroid setup
Android setup
 
Android Stsucture
Android StsuctureAndroid Stsucture
Android Stsucture
 
AN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILESAN ANDROID APP FOR BUILDING STUDENT PROFILES
AN ANDROID APP FOR BUILDING STUDENT PROFILES
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Android report
Android reportAndroid report
Android report
 
Training android
Training androidTraining android
Training android
 
Synopsis on android application
Synopsis on android applicationSynopsis on android application
Synopsis on android application
 
Android and it’s applications
Android and it’s applicationsAndroid and it’s applications
Android and it’s applications
 
Introduction to Android Environment
Introduction to Android EnvironmentIntroduction to Android Environment
Introduction to Android Environment
 
ANDROID PPT_DAY1.ppt
ANDROID PPT_DAY1.pptANDROID PPT_DAY1.ppt
ANDROID PPT_DAY1.ppt
 
Aptech Apps
Aptech Apps Aptech Apps
Aptech Apps
 
Unit 1-android-and-its-tools-ass
Unit 1-android-and-its-tools-assUnit 1-android-and-its-tools-ass
Unit 1-android-and-its-tools-ass
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating system
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Android
AndroidAndroid
Android
 
Android
Android Android
Android
 
Getting started with immersive technologies
Getting started with immersive technologiesGetting started with immersive technologies
Getting started with immersive technologies
 
androidPramming.ppt
androidPramming.pptandroidPramming.ppt
androidPramming.ppt
 

Introduction to android

  • 1. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Introduction Android Overview Android is a comprehensive open source platform designed for mobile devices. It is championed by Google and owned by Open Handset Alliance. The goal of the alliance is to “accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience.” Android is the vehicle to do so.  In 2005, Google buys Android, Inc. The world thinks a “gPhone” is about to come out.  In 2007, the Open Handset Alliance is announced. Android is officially open sourced.  In 2008, the Android SDK 1.0 is released. The G1 phone, manufactured by HTC and sold by the wireless carrier T-Mobile USA, follows shortly afterward.  2009 sees a proliferation of Android-based devices. New versions of the operating system are released: Cupcake (1.5), Donut (1.6), and Eclair (2.0 and 2.1). More than 20 devices run Android.  In 2010, Android is second only to Blackberry as the best-selling smart phone platform. Froyo (Android 2.2) is released and so are more than 60 devices that run it. Android Versions Like any software, Android is improved over time, which is reflected in its version numbers. However, the relationship between different version numbers can be confusing. Table 1-1 helps explain that Android version API level Nickname Android 1.0 1 Android 1.0 Android 1.1 2 Android 1.1 Android 1.5 3 Cupcake Android 1.6 4 Donut Android 2.0,2.01,2.1 5 ,6,7 Eclair Android 2.2 8 Froyo (frozen yogurt) Android 2.3,2.3.3 9,10 Gingerbread Android 3.0 ,3.1,3.2 11,12,13 Honeycomb Android 4.0,4.03 14,15 Ice cream Sandwich Android 4.1,4.2 16,17 Jelly Bean
  • 2. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis How many Devices “A big day for Android... 500 million devices activated globally, and over 1.3 million added every single day," said Hugo Bara, Android's director of product management, in a Google+ post. It's not clear how many devices are replacing older ones, though. September 12, 2012 Why Android as developers Security Linux is a highly secure system, having been tried and tested through some very harsh environments over the decades. Android heavily relies on Linux for security. All Android applications run as separate Linux processes with permissions set by the Linux system. As such, Android passes many security concerns to the underlying Linux system. Features Linux comes with a lot of very useful features. Android leverages many of them, such as support for memory management, power management, and networking. Application Framework Contains application framework which provides numerous services to help you, the app developer, get your job done. This is the best-documented and most extensively covered part of the platform because it is this layer that empowers developers to get creative and bring fantastic applications to the market. Native Libraries The native libraries are C/C++ libraries, often taken from the open source community in order to provide necessary services to the Android application layer. Among others, they include:  Webkit A fast web-rendering engine used by Safari, Chrome, and other browsers  SQLite A full-featured SQL database  Apache Harmony An open source implementation of Java  OpenGL 3D graphics libraries  OpenSSL The secure locket layer
  • 3. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Setting up your IDE Quick configuration with Android Bundle The Android SDK provides you the API libraries and developer tools necessary to build, test, and debug apps for Android. If you're a new Android developer, we recommend you download the ADT Bundle to quickly start developing apps. It includes the essential Android SDK components and a version of the Eclipse IDE with built-in ADT (Android Developer Tools) to streamline your Android app development. With a single download, the ADT Bundle includes everything you need to begin developing apps:  Eclipse + ADT plugin  Android SDK Tools  Android Platform-tools  The latest Android platform  The latest Android system image for the emulator How to configure 1. Download ADT Bundle for your operating system from http://developer.android.com/sdk/index.html 2. Unpack the ZIP file (named adt-bundle-<os_platform>.zip) and save it to an appropriate location, such as a "Development" directory in your home directory. 3. Open the adt-bundle-<os_platform>/eclipse/ directory and launch eclipse.
  • 4. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis USE AN EXISTING IDE If you already have an IDE you want to use for Android app development, setting up a new SDK requires that you download the SDK Tools, then select additional Android SDK packages to install (such as the Android platform and system image). If you'll be using an existing version of Eclipse, then you can add the ADT plugin to it. How to configure 1. Download android SDK from http://dl.google.com/android/installer_r21.1-windows.exe 2. Start Eclipse, then select Help→Install New Software 3. In the Available Software dialog, click Add. 4. In the Add Site dialog that appears, enter a name for the remote site (for example, 5. “Android Plugin”) in the “Name” field. 6. In the “Location” field, enter this URL: https://dl-ssl.google.com/android/eclipse/ 7. Click OK. Back in the Available Software view, you should now see “Developer Tools” added 8. To the list. Select the checkbox next to Developer Tools, which will automatically 9. Select the nested tools Android DDMS and Android Development Tools. Click Next. 10. In the resulting Install Details dialog, the Android DDMS and Android Development 11. Tools features are listed. Click Next to read and accept the license agreement and install any dependencies, then click Finish. 12. Restart Eclipse.
  • 5. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Code Practice Declaring Activity 1. In Eclipse click File->New->Android Application Project 2. Specify all required infrmation as shown below 3. Click Next antil you reached activity creation step, and specify activity information as shown below
  • 6. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis 4.Click finish, your project will be created as shown below.
  • 7. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis 4. Open up the manifest file from the Package Explorer, and then click on the AndroidManifest.xml tab at the bottom to display the code that the IDE has produced. Within the <activity> element, find the following attributes: android:name=".MainActivity" android:label="@string/app_name" 5. Edit the code so that it matches the following snippet: <activity android:name=".MainActivity" android:label="Welcome to Android Introduction" android:screenOrientation="portrait"> ... </activity> 6. To run your application you need to create android virtual device , to do so click “Android Virtual Device Manager” from task bar as shown in the figure below. Android Virtual Device Manager
  • 8. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis 7. You will be presented with virtual device manager as shown below 8. Click New and create new emulator and start . 9. Now close all the dialog except the emulator , and return to your Eclipse IDE 10. To run your application click Run ->Run Starting a new activity with an intent object 1. Now from package explorer go to res->layout and open main.xml 2. Next to </TextView> Insert button as shown below <Button android:id="@+id/callButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Call Log" /> 3. Save and close 4. From package explorer got src and open MainActivity.java and put the following method at the end inside the class void startCallButton () {
  • 9. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Intent myIntent = new Intent(); myIntent.setAction(Intent.ACTION_CALL_BUTTON); startActivity(myIntent); 5. Insert button click event listener code show bellow in to onCreate() method next setContentView() Button cButton=(Button)findViewById(R.id.callButton); cButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub startCallButton(); } }); 6. Save the project and run,and click the button 7. If this generates an error message, it may be that the correct libraries have not been imported. To use intents we have to import the relevant library, which can be done with import android.content.Intent; however it's easy to get Eclipse to import any missing libraries simply by pressing Shift + Ctrl + O.
  • 10. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Switching between activities Often we will want to activate one activity from within another. Although this is not a difficult task, it will require more setting up than the previous two recipes as it will need two activities to be declared in the Manifest, a new Class to serve as our second activity, and a button along with a click listener to perform the switch. 1. Create a new activity in the same location as the original activity subclass to do so: Right Click on your project->click New->click other You will be presented with the following dialog box. 2. Select Android Activity and click next ->next until you reach new activity dialog box and Activity Name- MySubActivity Layout Name – mysub And leave everything as it is and click finish.
  • 11. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis 3. Next, we must add a button that the user can click on to switch activities. This is set up through the main.xml file which resides in the res/layout folder in the Package Explorer. 4. Open the main.xml file and click on the XML tab at the bottom so that the code can be edited. 5. Add the following <Button> element just after the call button from previous example y: <Button android:text="click to switch activities" android:id="@+id/main_activity_button" android:layout_width="wrap_content" android:layout_height="wrap_content"> </Button> 6. Now open the original Java activity class,. 7. Add the following code to the onCreate() method after the setContentView(R. layout.main); statement, making sure to replace the package and class parameters in the setClassName() call with your own, as they will most likely be different: Button switchButton = (Button) findViewById(R.id.main_activity_button); switchButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); String packageName = "com.example.mysimpleapp "; String className = "com.example.mysimpleapp.MySubActivity"; intent.setClassName(packageName, className); startActivity(intent); } }); 8. Run the application on a device or emulator. Clicking on the button will now start the sub activity. Passing Data from one activity to another 1. Create a new project with these project name PassDataActivity. Leave everything else as it is by default and click finish. 2. Open activity_main.xml and put EditText and Button as shown below. <EditText android:id="@+id/messageText" android:layout_width="match_parent" android:layout_height="wrap_content" android:ems="10" > <requestFocus /> </EditText>
  • 12. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis <Button android:id="@+id/sendButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Send" /> 3. In the package explorer open MainActivity.java and add the following code to the onCreate() method after the setContentView(R. layout.main); Button mSendButton=(Button)findViewById(R.id.sendButton); mSendButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub EditText MessageText=(EditText)findViewById(R.id.messageText); Intent intent= new Intent(); intent.setClassName("com.example.passdataactivity","com.example.passdataactivi ty.SecondActivity"); intent.putExtra("com_example_passdataactivity_id", mMessageText.getText().toString()); startActivity(intent); } }); 4. Now time to create our second activity, add new activity and name it SecondActivity. Leave everything as it and click finish. 5. From package explorer Open SecondActivity.java and add the following code to the onCreate() method after the setContentView(R. layout.main); String msg=getIntent().getExtras().getString("com_example_passdataactivity_id "); EditText msgView=new EditText(this); msgView.setText(msg); setContentView(msgView); 6. Run the application on a device or an emulator.
  • 13. Introduction To Android Bantyder Bahru GDG-Addis March 30, 2013 ICE Addis Resources • ORielly Learning Android, Marko Gargenta • APress Beginning Android 4,Grant Allen • PACKT,Android 3.0 Application Development Cookbook, Kyle Merrifield Mew • http://developer.android.com