Successfully reported this slideshow.

1 introduction of android

414 views

Published on

ANDROID INTRODUCTION

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

1 introduction of android

  1. 1. Introduction
  2. 2. What is a Software?  A collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it making imaginary into reality . patel.nauka@codefruxtechnology.com
  3. 3. SMART PHONES
  4. 4.  Smartphone= PDA + Cell phone  Smartphone Features  Keyboard Internet Access Ability to download app & run independently Personal Information Management Wi-Fi Support 3rd party app And many more…       patel.nauka@codefruxtechnology.com
  5. 5. patel.nauka@codefruxtechnology.com
  6. 6. Software Stack  Set of programs working together to produce a result.  It consists of 1. Operating System 2. Middleware 3. Key Applications patel.nauka@codefruxtechnology.com
  7. 7. Different OS available Feature Company Current Version iOS Android Windows Mobile BlackBerry OS Symbian Bada Apple Open Handset Alliance (Google) Microsoft RIM Symbian Foundation Samsung 4.3.3 4.0 (Phones) 4.0 (Tablets) 6.5.3 6.0.0 9.5 1.2 C++ Java C++ C++ Programmed C, C++, C, C++, in Objective-C Java patel.nauka@codefruxtechnology.com
  8. 8. What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware and key applications. patel.nauka@codefruxtechnology.com
  9. 9. WHYANDROID?  A simple and powerful SDK  No licensing, distribution, or development fees  Development over many platform Linux, Mac OS, windows  Excellent documentation  For us: Development using Java .  Job opportunity  patel.nauka@codefruxtechnology.com
  10. 10. The Birth of Android       Android Inc. founded in 2003 The key players at Android Inc. included Andy Rubin -co-founder of Danger .Inc Rich Miner-co-founder of Wildfire Communications, Inc. Nick Sears - once VP at T-Mobile Chris White - headed design and interface development at Web TV Android Inc. acquired by Google Google acquired the startup company Android Inc. in 2005 to start the development of the Android Platform.
  11. 11. Introducing Android A first joined project of the Open Handset Alliance (OHA)   First open, complete and free platform Software stack open-sourced. A generous development environment    A SDK is available to build ,compile, test and debug user applications. Applications are developed using Java programming language No difference between the built-in applications and the user ones
  12. 12. What is Open Handset Alliance?  •“… Open Handset Alliance™, a group of 85 technology and mobile firms have come together to develop open standards for mobile devices.  Google, HTC, Sony, Dell, Intel, Motorola, Qualcomm, Samsung, LG, TMobile.....etc.  Announcement of the formation of the OHA was on 5 November 2007.
  13. 13. First Mobile  An early look of the SDK was released to developers on 12 November 2007.  The first commercially available Android phone was the T-Mobile G1 (HTC Dream). In August 2008,and became available on 22 October.
  14. 14. Phones sony-ericsson experia-x10 HTC-Wildfire Motorola Droid (X) Nexus-S Huawei-IDEOS-X5 Samsung Galaxy patel.nauka@codefruxtechnology.com
  15. 15. Tablets Velocity Micro Cruz Gome FlyTouch Acer beTouch Cisco Android Tablet Dawa D7 Samsung Galaxy patel.nauka@codefruxtechnology.com Tab
  16. 16. Features           Application framework enabling reuse and replacement of components Dalvik virtual machine optimized for mobile devices Integrated browser based on the open source WebKit engine Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional) SQLite for structured data storage Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM Telephony (hardware dependent) Bluetooth, EDGE, 3G, and WiFi (hardware dependent) Camera, GPS, compass, and accelerometer (hardware dependent) Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE patel.nauka@codefruxtechnology.com
  17. 17. What you need:  Operating System: Windows XP: (32-bit), Vista (32/64-bit), or Windows 7 (32/ 64-bit) Mac OS X : 10.5.8 or later (x86 only) Linux : Ubuntu Linux, version 8.04 or later is required.  JDK >= 5  Android SDK  Eclipse + Android Development Tools plug-in patel.nauka@codefruxtechnology.com
  18. 18. Installation - JDK patel.nauka@codefruxtechnology.com
  19. 19. Installation - Android SDK  Download the Android SDK from: http://developer.android.com/sdk/  Unpack the compressed file into a location you prefer. patel.nauka@codefruxtechnology.com
  20. 20. patel.nauka@codefruxtechnology.com
  21. 21. To create an AVD in Eclipse: 1. Select Window > Android SDK and AVD Manager. The Android SDK and AVD Manager displays. 1. Make sure the entry for Virtual Devices is selected and click New. The Create new AVD window displays. 1. Enter a Name for the AVD. 2. Select Android APIs (API level 8) as the Target. Click Create AVD. Close the Android SDK and AVD Manager. 3. 4. patel.nauka@codefruxtechnology.com
  22. 22. To create the project in Eclipse: 1. 2. 3. 4. 5. 6. 7. 8. Select File > New > Project. Select Android Project in the Android folder and click Next. Enter Project Name. Select APIs (Platform 2.2) as the Build Target. Enter the Application name. Enter com.android as the Package name. Enter the Activity name. Click Finish. patel.nauka@codefruxtechnology.com
  23. 23. patel.nauka@codefruxtechnology.com
  24. 24. Structure of a typical Android Application patel.nauka@codefruxtechnology.com
  25. 25. Android Manifest xml File  Every application must have an AndroidManifest.xml file (with precisely that name) in its root directory.  The manifest presents essential information about the application to the Android system, information the system must have before it can run any of the application's code. patel.nauka@codefruxtechnology.com
  26. 26.  <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="matos.currencyconvereter" android:versionCode="1" android:versionName="1.0">  <application android:icon="@drawable/icon" android:label="@string/app_name">  <activity android:name=".Currency1" android:label="@string/app_name">              <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdkandroid:minSdkVersion="3" /> </manifest> patel.nauka@codefruxtechnology.com
  27. 27. Architecture patel.nauka@codefruxtechnology.com
  28. 28. Android S/W Stack – Linux Kernel  This is the kernel on which android is based . This layer contains all the low level device drivers for the various hardware components of an android device.  Providing an abstraction layer between the H/W and the rest of the S/W stack letting the upper levels remain unchanged despite changes in the underlying hardware. patel.nauka@codefruxtechnology.com
  29. 29. Android S/W Stack - Runtime  Core Libraries  At the same layer as libraries set of core libraries that enable developers to write android Apps using java Prog. Language.  Providing most of the functionality available in the core libraries of the Java language  APIs  Data Structures  Utilities  File Access  Network Access  Graphics  Etc patel.nauka@codefruxtechnology.com
  30. 30. Android S/W Stack – Runtime (Cont)  Dalvik Virtual Machine  Providing environment on which every Android application runs    Each Android application runs in its own process, with its own instance of the Dalvik VM. Dalvik has been written so that a device can run multiple VMs efficiently. Register-based virtual machine patel.nauka@codefruxtechnology.com
  31. 31. Android S/W Stack – Runtime (Cont)  Dalvik Virtual Machine (Cont)  Executing the Dalvik Executable (.dex) format    .dex format is optimized for minimal memory footprint. Compilation Relying on the Linux Kernel for:   Threading Low-level memory management patel.nauka@codefruxtechnology.com
  32. 32. Android S/W Stack – App Framework  Enabling   and simplifying the reuse of components Developers have full access to the same framework APIs used by the core applications. Users are allowed to replace components. patel.nauka@codefruxtechnology.com
  33. 33. Android S/W Stack – App Framework  Features Feature Role View System Used to build an application, including lists, grids, text boxes, buttons, and embedded web browser Content Provider Enabling applications to access data from other applications or to share their own data Resource Manager Providing access to non-code resources (localized string , graphics, and layout files) Notification Manager Enabling all applications to display customer alerts in the status bar Activity Manager Managing the lifecycle of applications and providing a common navigation backstack patel.nauka@codefruxtechnology.com
  34. 34. Android S/W Stack - Application  Android provides a set of core applications:         Email Client SMS Program Calendar Maps Browser Contacts Etc All applications are written using the Java language. patel.nauka@codefruxtechnology.com
  35. 35. patel.nauka@codefruxtechnology.com
  36. 36. Activity lifecycle An activity has essentially three states:  It is active or running when it is in the foreground of the screen (at the top of the activity stack for the current task). This is the activity that is the focus for the user's actions.  patel.nauka@codefruxtechnology.com
  37. 37.  As an activity transitions from state to state, it is notified of the change by calls to the following protected methods: void onCreate(Bundle savedInstanceState) void onStart() void onRestart() void onResume() void onPause() void onStop() void onDestroy() patel.nauka@codefruxtechnology.com
  38. 38.  onCreate() : called when the activity is first created  onStart() :called when activity becomes visible to user  onResume() : called when activity start interacting with user.  onPause() : called when current activity is being paused and previous activity is being resumed.  onStop() : called when activity is longer visible to user. patel.nauka@codefruxtechnology.com
  39. 39.  onDestroy(): called before activity is destroyed by the system.  onRestart() : called when activity has been stopped and restarting again. patel.nauka@codefruxtechnology.com
  40. 40. patel.nauka@codefruxtechnology.com
  41. 41. Layouts 1. 2. 3. 4. 5. 6. 7. LinearLayout RelativeLayout TableLayout TabLayout FrameLayout GridLayout ListView patel.nauka@codefruxtechnology.com
  42. 42. Layouts:  Frame Layout: all child views are pinned to the top left corner of the screen  Linear Layout: each child view is added in a straight line (vertically or horizontally)  Table Layout: add views using a grid of rows and columns  Relative Layout : add views relative to the position of other views or to its parent. patel.nauka@codefruxtechnology.com
  43. 43.  Absolute Layout : for each view you add, you specify the exact screen coordinate to display on the screen  Tab Layout : add different tab relative to each other patel.nauka@codefruxtechnology.com
  44. 44. Views           TextView Button EditText Radio button CheckBox Spinner WebView ImageView GalleryView SurfaceView patel.nauka@codefruxtechnology.com
  45. 45. Intent
  46. 46.  Message passing between two or more then two components of android  Activity interact each other with the help of intent in android  Basically two type of intent available in android  Implicit Intent Explicit Intent  patel.nauka@codefruxtechnology.com
  47. 47.  Implicit Intent: Intent which is sent from one activity to in built android activity For ex 1. Dialer 2. Contacts 3. Browser patel.nauka@codefruxtechnology.com
  48. 48. Dialer patel.nauka@codefruxtechnology.com
  49. 49. Calling patel.nauka@codefruxtechnology.com
  50. 50. Browser patel.nauka@codefruxtechnology.com
  51. 51. Contacts N Nauka Rao patel.nauka@codefruxtechnology.com
  52. 52. Log patel.nauka@codefruxtechnology.com
  53. 53. Camera patel.nauka@codefruxtechnology.com
  54. 54. Pick Nauka Rao patel.nauka@codefruxtechnology.com
  55. 55.  Dial: Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_DIAL); i.setData(Uri.parse("tel:2121")); startActivity(i);  Call: Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_CALL); i.setData(Uri.parse("tel:2121")); startActivity(i); ankit@codefruxtechnology.com
  56. 56.  Browser: Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_VIEW); i.setData(Uri.parse("http://www.google.com")); startActivity(i);  Contacts: Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_VIEW); i.setData(Uri.parse("content://contacts/people/")); startActivity(i); ankit@codefruxtechnology.com
  57. 57.  Call_Log: Intent i = new Intent(); i.setAction(Intent.ACTION_VIEW); i.setData(Uri.parse("content://call_log/calls/1")); startActivity(i);  Media: Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_VIEW); i.setData(Uri.parse("content://media/external/images/media/1")); startActivity(i); ankit@codefruxtechnology.com
  58. 58.  Camera: Intent i = new Intent(); i.setAction(MediaStore.ACTION_IMAGE_CAPTURE); startActivity(i);  Pick : Intent i = new Intent(); i.setAction(android.content.Intent.ACTION_PICK); i.setData(Uri.parse("content://contacts/people/")); startActivity(i); ankit@codefruxtechnology.com
  59. 59. Explicit Intent: intent which is send to one activity to another own activity Second Activity must be registered in manifest.xml file Intent i=new Intent(First.this,Second.class); startActivity(i); ankit@codefruxtechnology.com
  60. 60. patel.nauka@codefruxtechnology.com

×