android os & sdk - getting started

39
Operating System & Software Development Kit

Upload: hemant-chhapoliya

Post on 01-Sep-2014

718 views

Category:

Education


2 download

DESCRIPTION

If you want to start a good career in Android Development, this presentation gives you a basic introduction about Android, and how you can develop your very first Android Application.

TRANSCRIPT

  • Operating System & Software Development Kit
  • Overview Introduction to Android Architecture of Android Application Building Blocks Developing Android App Career Opportunities
  • Introduction
  • Introduction to Android Open Source Software Platform for Mobile Application Development An Open Handset Alliance Project, acquired by Google, Inc. in 2005 A Complete Stack Operating System + Middleware + Applications Powered by Linux Operating System Developed using C/C++ , provide development using Java
  • Android Powered Devices Smart Phones Tablets Washing Machine Coffeemaker (Appresso) Watch Android Powered Microwave (MAID) Camera (Coolpix S800c) Gaming Console E-Bike (concept by Ford Motor Co.) Android Powered Headrest Ninja Robot (boxing robot) Android Powered Refrigerator Smart TV & Pocket TV Chevrolet Volt integrated with Android
  • Architecture
  • Architecture of Android Applications Application Framework Libraries Android Runtime Linux Kernel Android Runtime Libraries Linux Kernel Dalvik Virtual machine Application Framework Applications C/C++ Libraries Work asfile (Hardware Abstraction Layer) .dex HAL API Interface application Built in and User Interface through Java Device Drivers Efficient Compact and Activity manager.apk files Can install using Limited memory & Power Handling User Interface memory management Content ->Phone-> .jar ->WeChat, Web Browser, Providers Example: .class Dialer, .dex .java 2D/3DAndroid or others Graphics Process Management Hello Location Manager etc Core LibrariesBrowser Engine, SQLite Media Acces, Networking Java Standard Edition
  • Application Building Blocks
  • Application Building Blocks Activity Intents Service Content Providers
  • Activities Corresponds to one UI Screen But they can be faceless, floating window, return a value
  • Intents Think intent as an object or description what you want DONE! Example- view, call, play etc. System matches intent with activity that can best provide the service Activities and IntentRecievers describe what intent can service Activity 1 Intent (says : I want to do this) Activity 2
  • Services Components that run in a background Music player, download etc.
  • Content Providers App 2 App 1 Sharing of data across applications Address book, photo gallery Provide uniform API for: Content Provider (eg. address book) Query Delete, update & insert App 3 App 4
  • Developing Android App
  • Android Software Development Kit (SDK) Java SDK (at least Java SDK 5) Android SDK (http://developer.android.com/sdk/index.html)
  • Android SDK
  • Android Software Development Kit (SDK) Install the Java and set CLASSPATH and PATH Unzip the downloaded Android SDK, and run Eclipse (run as admin)
  • Android Application Life Cycle onCreate() onStart() Starting onRestart() onStart() onResume() Running onResume() onSaveInstanceState() onPause() Paused Stopped onSaveInstanceState() onStop() onDestroy() Destroyed onDestroy()
  • Whats inside an App ? Default Activity Libraries Other Default Default Activities Activity Activity Service Content Android Manifest Drawable Layouts Values Assets
  • Android SDK Manager Using this tool, we can download the required APIs & Libraries, for application.
  • Lets start developing Start Eclipse (ADT) File -> new -> project Select Android Application Project Click next
  • Enter Application Name HelloAndroid Enter Project Name HelloAndroid Enter Package Name com.example.helloandroid Minimum Required SDK API 10 Target SDK : API 10 Compile With: API 10 Theme : none
  • Lets start developing Choose all other options as default. Click next -> next -> next -> finish.. Now we are ready to Code and Develop
  • Lets start developing MainActivity.java : for back-end programming Activity_main.xml : for designing layout (UI) Double Click the activity_main.xml Eclipse will show its Graphical layout : for drag-n-drop design Activity_main.xml : for code based design
  • Lets start developing In this application, we want to bind an event to that button Whenever user click (or touch) that button, the text box must display Hello Android We have designed our UI, and now its time for code in java.
  • Lets start developing package com.example.helloandroid; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText;
  • public class MainActivity extends Activity implements OnClickListener { private EditText txt; private Button btn; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); txt = (EditText) findViewById(R.id.editText1); btn = (Button) findViewById(R.id.button1); btn.setOnClickListener(this); } public void onClick(View v) { txt.setText("Hello Android"); } }
  • Running the Application We need to set an emulator to test on PC. In eclipse, click Android Virtual device Manager icon. It will popup a dialog box, that you can use to create your emulator. In that dialog box, click new button to add an emulator.
  • Wowww!! We have done it! Now its ready to launch Press Ctrl + F11 to Run
  • Congratulations! You create your very first App! Now, its time to publish it to the world
  • Publishing Android App on Google Play Store https://play.google.com/apps/publish/signup/ $25 (Rs. 1600 1700) one time fee, pay via Google Wallet
  • Upload APK file Find .apk of your project in bin folder of your workspace Upload it using Screen Instructions Manage Pricing & Distribution Manage Store Listing Available for end-user, anywhere in the world
  • Career Opportunities
  • Career in Android Development Salary Highest Salary Increases 9% from 2012-2013 2012 : $85,000 - $1,22,500 , 2013 : $92,750 $1,33,500 (networkworld.com survey) Future Scope & Growth The more devices, the more software required, the more developer required Get experience in Java & programming, help you to switch if you needed
  • Thanks! - Hemant Kumar Chapoliya http://hemantchhapoliya.co.in