Unit IV Android Overview. WHAT IS ANDROID?  A Software platform and operating system for mobile.  Based on the Linux kernel.  An open source  Android.

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

Google Android Introduction to Mobile Computing. Android is part of the build a better phone process Open Handset Alliance produces Android Comprises.
WHAT IS ANDROID? A Software platform and operating system for mobile. Based on the Linux kernel. Android was found way back in It was developed.
Introduction.  Professor  Adam Porter 
Presentation by Amal Babu New OS of Google, initially designed for netbooks Released in second half of 2010 Google chrome browser on Linux kernel Inbuilt.
Delrieu Marjorie Loiseau Pierre
 Android's mobile operating system is based on the Linux kernel and is the world's best-selling Smartphone.  There are currently over 200,000 apps available.
David Angulo Rubio ANDROID OS Open Software Platform for Mobile Devices.
Android Development Tutorial Yi Huang. Contents 2  What’s Android  Android architecture  Android software development  ‘Hello World’ on Android 
What is Android?.
Android architecture overview
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Programming Mobile Applications with Android
Android Platform Overview (1)
Android Aims to bring Internet-style innovation and openness to mobile phones.
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
Mobile Application Development
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
Android Application Development with Java UPenn CS4HS 2011 Chris Murphy
Introduction to Android Platform Overview
To be Presented by, T.Sathishkumar [11mw07] 1. Synopsis Introduction Version Features License An Application Development Demo Possibilities Advantages.
Chapter 1: Voilà! Meet the Android. Smartphones –Can browse the Web –Allow you to play games –Use business applications –Check –Play music –Record.
Android Introduction Platform Overview.
Introduction to Android Programming Content Basic environmental structure Building a simple app Debugging.
Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009.
Mobile Application Development with ANDROID. Agenda Mobile Application Development (MAD) Intro to Android platform Platform architecture Application building.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Mobile Application Development using Android
Android Introduction Based on slides made by
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Week II Platforms and Engines. Overview Platforms and Engines Tools and SDKs Netbeans Game Development Walkthrough
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
1 Android- Platform Overview. 2 What is Android? Android is a software stack for mobile devices that includes an operating system, middleware and key.
Android for Java Developers Denver Java Users Group Jan 11, Mike
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
Android Husam Abdel Rahman. Introduction Android Operating system is most popular operating system these days with the advance in voice communications.
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Announcements Homework #2 will be posted after class due Thursday Feb 7, 1:30pm you may work with one other person No office hours tonight (sorry!) I will.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
1 Android Introduction Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
Mobile Application Development with ANDROID Umang Patel(6537) LDCE.
@2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day.
By, Rutika R. Channawar. Content Introduction Open Handset Alliance Minimum Hardware Requirements Versions Feature Architecture Advantages Disadvantages.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
J.BHAVANA 3/4B.TECH CSE Ch.Rochasmathi 3/4B.tech CSE.
By : Abhishek Verma Main Topics : 1. Introduction 2. Platform 3. Software Development 4. Overall Evaluation.
By Adam Reimel. Outline Introduction Platform Architecture Future Conclusion.
ANDROID OS Ravi Soni MTech (CS) III Sem. W HAT IS A NDROID ? Android is a software stack for mobile devices that includes an operating system, middleware.
Android. Android An Open Handset Alliance Project A software platform and operating system for mobile devices Based on the Linux kernel Developed by Google.
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Android Programming.
Android Mobile Application Development
Android Application Development 1 6 May 2018
Visit for more Learning Resources
Architecture of Android
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
chapter 6- Android Introduction
ANDROID AND ANDROID PHONES
Android.
Contents: Introduction Different Mobile Operating Systems
CMPE419 Mobile Application Development
ANDROID AND ANDROID PHONES
Application Development A Tutorial Driven Course
CHAPTER 1 Introduction Chapter objectives: Understand what Android is
Android Introduction Platform Mihail L. Sichitiu.
CMPE419 Mobile Application Development
Presentation transcript:

Unit IV Android Overview

WHAT IS ANDROID?  A Software platform and operating system for mobile.  Based on the Linux kernel.  An open source  Android was found way back in  It was developed in Palo Alto, California.  Android was developed by the Andy Rubin, Rich Miner, Nick Sears and Chris White.  Android was purchased by the GOOGLE in AUGUST,2005 for 50 million $.

What’s Android 3  It’s a software stack for mobile devices that includes an operating system, middleware and key applications  Android is based on JAVA and all its applications are developed in JAVA  The JAVA VM, known as Dalvik, is highly customized and optimized for mobile devices  Android SDK offers rich tools for android application development and many useful APIs 。  It’s not 1984

OHA and Android 4  OHA(Open Handset Alliance) is a group of 71 technology and mobile companies, including Google, Intel, Dell, HTC and China Mobile…  OHA’s aim : accelerate innovation in mobile phones offer consumers a richer, less expensive, and better mobile experience  OHA developed Android, the first complete, open and free mobile platform  OHA was initially called up by Google, and Google is the ‘captain’  Reason for Nokia not to develop Android Mobiles is Nokia is not part of OHA.

Android Features 5  A software stack for mobile devices that includes An operating system Middleware Key Applications  Application framework enabling reuse and replacement of components  Optimized Java virtual machine: Dalvik  Rich development environment, including an emulator, debugging tools, memory probe tools, log tools and powerful eclipse plugins.  Uses Linux to provide core system services Security Memory management Process management Power management Hardware drivers

Android Features 6 FeatureDescription Beautiful UIAndroid OS basic screen provides a beautiful and intuitive user interface. ConnectivityGSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX. StorageSQLite, a lightweight relational database, is used for data storage purposes. Media supportH.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP MessagingSMS and MMS Web browserBased on the open-source WebKit layout engine, coupled with Chrome's V8 JavaScript engine supporting HTML5 and CSS3. Multi-touchAndroid has native support for multi-touch which was initially made available in handsets such as the HTC Hero.

Android Features 7 FeatureDescription Multi-taskingUser can jump from one task to another and same time various application can run simultaneously. Resizable widgetsWidgets are resizable, so users can expand them to show more content or shrink them to save space Multi-LanguageSupports single direction and bi-directional text. GCMGoogle Cloud Messaging (GCM) is a service that lets developers send short message data to their users on Android devices, without needing a proprietary sync solution. Wi-Fi DirectA technology that lets apps discover and pair directly, over a high- bandwidth peer-to-peer connection. Android BeamA popular NFC-based technology that lets users instantly share, just by touching two NFC-enabled phones together.

Android Astro 1.0 First full version of android and Released in November 2007 Commercial Version released on September 23, Wi-Fi and Bluetooth support. Quite slow in operating. copy and paste feature in the web browser is not present Android Beta First Version of Android. Released in November 2007 The focus of Android beta is testing incorporating usability. Android beta will generally have many more problems on speed and performance. Android Cupcake 1.5 Released on April 30, Added auto-rotation option. Copy and Paste feature added in the web browser. Increased speed and performance but not upto required level.

Android Donut 1.6 Released on September 15, Voice search and Search box were added. Faster OS boot times and fast web browsing experience. Typing is quite slower. Android Éclair 2.0/2.1 Released on October 26, Bluetooth 2.1 support. no Adobe flash media support. Improved typing speed on virtual keyboard, with smarter dictionary. Android Froyo 2.2 Released on May 20, Support for Adobe Flash 10.1 Improved Application launcher with better browser No internet calling.

Android Gingerbread 2.3 Released on December 6, Updated User Interface with high efficiency and speed One touch word selection and copy/paste, Internet calling New keyboard for faster word input. More successful version of Android than previous versions. not supports multi-core processors. Android Honeycomb 3.0 Released on February 22, Support for multi-core processors Ability to encrypt all user data. This version of android is only available for tablets. Android IceCreamSandwich(ICS) 4.0 Released on November 14, Virtual button in the UI. A new typeface family for the UI, Roboto. Ability to shut down apps that are using data in the background.

Android JellyBean 4.1 Released on June 27, Smoother user interface. Android Kitkat 4.4 Released on September 3, 2013 Released on September 3, 2013 Initially under the "Key Lime Pie" ("KLP") codename Wireless printing capability (Android Runtime (ART) introduced as a new experimental application runtime environment, not enabled by default, as a replacement for the Dalvik virtual machine.) Android Lolipop 5.1 Unveiled on June 25, 2014 Latest version of Android. A do-not-disturb feature (Dalvik virtual machine was officially replaced by Android Runtime (ART), which is a new runtime environment that was introduced as a technology preview in KitKat.)

Android Marshmallow 6.0 officially released in October 2015 focuses on improving the overall user experience of Lollipop a new power management system that reduces background activity when a device is not being physically handled native support for fingerprint recognition and USB Type- C connectors the ability to migrate data to a microSD card and use it as primary storage, as well as other internal changes.

Architecture

16

Linux Kernel 17  Android based on a Linux kernel not a Linux OS  Supplies Security, Memory management, Process management, Network stack and Driver model  Acts as an abstraction layer between the hardware and the rest of the software stack

Libraries 18  Run in system background  Using C/C++ Language  4 types of Libraries Bionic Libc, system C libraries Function Libraries, supporting multimedia, web browser, SQLite... Native Servers Hardware Abstraction Libraries

Core Libraries 19  System C library, the standard C system library, tuned for embedded Linux-based devices  Media Libraries, support playback and recording of many popular audio and video formats, as well as image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG  Surface Manager, manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications  WebKit, a modern web browser engine which powers both the Android browser and an embeddable web view  SGL, the underlying 2D graphics engine  3D libraries, an implementation based on OpenGL ES 1.0 APIs  FreeType, bitmap and vector font rendering  SQLite, a powerful and lightweight relational database engine

Android Runtime 20  The core of Android platform  Dalvik Virtual Machine Register-based Executes files in the Dalvik Executable (.dex) format  Java core Libraries Provides most of the functionality of the Java programming language.  The functions of Java core libraries rely on the Dalvik VM and the underlying Linux kernel  Multiple Dalvik VMs may run at the same time  Every Android application runs in its own process, with its own instance of the Dalvik virtual machine The "dx" tool in Android SDK can transform compiled JAVA class into the.dex format

Dalvik Virtual Machine 21  Android custom implementation virtual machine Provides application portability and runtime consistency Runs optimized file format (.dex) and Dalvik bytecode Java.class /.jar files converted to.dex at build time  Designed for embedded environment Supports multiple virtual machine processes per device Highly CPU-optimized bytecode interpreter Efficiently Using runtime memory  Core Libraries Core APIs for Java language provide a powerful, yet simple and familiar development platform

Android development Android Manifest Resource XML Java Source Generated Class Java Compiler Android Libraries.dex File Dalvik VM

DVM vs. JVM 23  DVM Google Dalvik executable Only supports a subset of standard Java Library  JVM Sun Java bytecode  Some worries that Java world may be divided into different communities, each has its own Java standard

Application Framework 24  Simplify the reuse of components Applications can publish their capabilities and any other application may then make use of those capabilities  Applications is a set of services and systems, include Views system, content providers, resources manager and so on

Application Framework (cont.) 25  Activity Manager, manages the lifecycle of applications and provides a common navigation backstack  Notification Manager, enables all applications to display custom alerts in the status bar  Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files  Content Providers, access data from other applications (such as Contacts), or to share their own data  Views, used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser

Applications 26  A set of core applications shipped with Android platform an client, SMS program, calendar, maps, browser, contacts, and others  All written in Java  Our applications are in the same level as these applications

Mobile Devices: Advantages (as compared to fixed devices)  Always with the user  Typically have Internet access  Typically GPS enabled  Typically have accelerometer & compass  Most have cameras & microphones  Many apps are free or low-cost

Mobile Devices: Disadvantages  Limited screen size, battery life, processor speed  Limited and sometimes slow network access  Limited web browser functionality  Range of platforms & configurations across devices  Making source code available to everyone inevitably invites the attention of hackers.  Android operating system uses more amount of battery as compared to normal mobile phones.  As there are so many user sometimes it becomes difficult to connect all the users.  As we call Android is world of applications we continuously need to connected with the internet which is not possible for all the users.

Mobile Applications  What are they? Any application that runs on a mobile device  Types Web apps: run in a web browser HTML, JavaScript, Flash, server-side components, etc. Native: compiled binaries for the device Often make use of web services

Online Resources  developer.android.com  code.google.com/p/apps-for-android/  stackoverflow.com  videos from Google I/O conferences

“Hello, Android”

Creating Your First Android App 1. Set up your development environment 2. Create a new Android project in Eclipse 3. Run it in the emulator

1. Set Up Your Android Environment   Install Eclipse  Install Android SDK (Android libraries)  Install ADT plugin (Android development tools)  Create AVD (Android virtual device)

2. Create an Android Project in Eclipse  File → New → Project  Select “Android Project”  Fill in Project details...

Name that appears on device Directory name Class to automatically create Java package Android version

3. Run the Android Application  Run → Run (or click the “Run” button)  Select “Android Application”  The emulator may take a few minutes to start, so be patient!  You don't need to restart the emulator when you have a new version of your application

Source code Auto-generated code UI layout String constants Configuration

1 public class HelloAndroid extends Activity { 2 /** Called when the activity is first created. */ 4 public void onCreate(Bundle savedInstanceState) 5 { 6 super.onCreate(savedInstanceState); 7 setContentView(R.layout.main); 8 } 9 } HelloAndroid.java

1 2 <LinearLayout 3 xmlns:android=" 4 android:orientation="vertical" 5 android:layout_width="fill_parent" 6 android:layout_height="fill_parent" 7 > 8 <TextView 9 android:layout_width="fill_parent" 10 android:layout_height="wrap_content" 11 " 12 /> 13 main.xml

1 2 3 Hello World, HelloAndroid! 4 5 Hello, Android 6 strings.xml

1 2 <manifest 3 xmlns:android=" 4 package="edu.upenn.cis542" 5 android:versionCode="1" 6 android:versionName="1.0"> 7 <application 8 9 <activity android:name=".HelloAndroid" <action 13 android:name="android.intent.action.MAIN" /> 14 <category 15 android:name="android.intent.category.LAUNCHER"/> AndroidManifest.xml