1 CSCE 4013: Mobile Systems Programming Nilanjan Banerjee Mobile Systems Programming University of Arkansas Fayetteville, AR

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.
Introduction.  Professor  Adam Porter 
Mobile Application Development with ANDROID Mobile Application Development with ANDROID d.
Platform Presentation Second Week Android Platform Team 27 / March / 2009.
Android architecture overview
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Android Platform Overview (1)
Android 02: Activities David Meredith
All About Android Introduction to Android 1. Creating a New App “These aren’t the droids we’re looking for.” Obi-wan Kenobi 1. Bring up Eclipse. 2. Click.
App Development on Android
Application Fundamentals. See: developer.android.com/guide/developing/building/index.html.
Filip Debelić What is it? Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google Android,
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.
S MARTPHONE A PPLICATION D EVELOPMENT Sam Palmer.
Introduction to Android Platform Overview
INTERNATIONAL SUMMER ACADEMIC COURSE UNIVESITY OF NIS ISAC – Android programming.
Emerging Platform#4: Android Bina Ramamurthy.  Android is an Operating system.  Android is an emerging platform for mobile devices.  Initially developed.
Android Introduction Platform Overview.
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: versions Note that: Honeycomb (Android v3.0) A tablet-only release Jelly Bean (Android v4.1) Released on July 09, 2012.
Android Introduction Based on slides made by
CS5103 Software Engineering Lecture 08 Android Development II.
© Keren Kalif Intro to Android Development Written by Keren Kalif, Edited by Liron Blecher Contains slides from Google I/O presentation.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Info mostly based on Pro Android 3.  User Applications  Java Libraries – most of Java standard edition ◦ Activities/Services ◦ UI/Graphics/View.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
01. Introduction to Android Prof. Oum Saokosal Master of Engineering in Information Systems, South Korea
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Особенности разработки под мобильную платформу Almaty GTUG, 2011 Ермек Жумагулов
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit
DUE Hello World on the Android Platform.
Android for Java Developers Denver Java Users Group Jan 11, Mike
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
10/10/2015 E.R.Edwards 10/10/2015 Staffordshire University School of Computing Introduction to Android Overview of Android System Android Components Component.
1 CMSC 628: Introduction to Mobile Computing Nilanjan Banerjee Introduction to Mobile Computing University of Maryland Baltimore County
Overview of Android Application Development
ANDROID L. Grewe Components  Java Standard Development Kit (JDK) (download) (latest version)  AndroidStudio.
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
 Installation of Android Development Environment  Creating the App with OpenGL ES API  Running the App on Emulator Android App Development.
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.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
Android operating system N. Sravani M. Tech(CSE) (09251D5804)
By Adam Reimel. Outline Introduction Platform Architecture Future Conclusion.
Android Fundamentals. What is Android Software stack for mobile devices Software stack for mobile devices SDK provides tools and APIs to develop apps.
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Android Mobile Application Development
Android Application -Architecture.
Visit for more Learning Resources
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
Android.
Activities and Intents
Android Mobile Application Development
Software Engineering in Mobile Computing
CMPE419 Mobile Application Development
Application Development A Tutorial Driven Course
HNDIT2417 Mobile Application Development
Android Introduction Platform Mihail L. Sichitiu.
Korea Software HRD Center
Introduction to Android
CMPE419 Mobile Application Development
Presentation transcript:

1 CSCE 4013: Mobile Systems Programming Nilanjan Banerjee Mobile Systems Programming University of Arkansas Fayetteville, AR

2 Few reasons to go MAD with phones… Smart phones Internet access anywhere Social networking Millions of mobile users Open standards

3 Introduction to Android Open software platform for mobile development A complete stack—OS, middleware, and Applications An open Handset Alliance (OHA) project Powered by the Linux OS Fast application development in Java Open source under the Apache 2 license

4 Architecture for Android.

5 Linux kernel Works as the HAL (Hardware Abstraction Layer) Device drivers Memory management Process management Network stack

6 Libraries C/C++ libraries Interfaces through Java Surface manager --- handles the UI Windows 2D and 3D graphics Media Codecs, SQLlite, Browser engine

7 Android runtime Dalvik VM Dex file Compact and efficient than class files Core Libraries Java 5 Std Edition Collections, I/O --- everything that is in standard Java

8 Application Framework API Interface Activity Manager Manages application lifetime

9 Lets jump into a simple Android application

10 Components of an Android application Activity Intent and IntentReceiver Service ContentProvider AndroidManifest (binds all of these together)

11 Activities Typically corresponds to one UI screen But they can be Faceless A floating window Return a value Typically a complex application will have multiple activites E.g., application Activity 1: log in page Activity 2: displaying a set of Transfer data between activities Usually form a bundle and pass it around (we will talk about in detail)

12 Intents A description of what you want done… something like a verb E.g. Intent of a music player is to PLAY Intents are of two types – Implicit and Explicit Explicit Application states which Java function to use Implicit System decides for you which intent is best for you

13 Intents GMail Contacts Home Blogger Chat Client component makes a request for a specific action “Pick photo” Picasa System picks best component for that action New components can use existing functionality Blogger Photo Gallery

14 Intent Receivers Components that respond to broadcast ‘Intents’ Way to respond to external notification or alarms Apps can invent and broadcast their own intent Using intent filters applications can decide which Intent to respond to

15 Services Faceless components that run in the background E.g., music players, network downloads

16 Content Provider Store and retrieves data and makes it accessible to all applications Resources are specific to your application Your application can define a content provider and publish it. Android stores content provider in the form of a database You can access it in your application Android provides audio, video, images, personal information android.provider.Contacts.Phone.

17 Resources Utilities that an application uses and “reuses” Strings, colors, dimensions, style/theme.

18 Application lifecycle onCreate() onStart() onResume() Activity running onPause() Process is killed Activity starts activity comes to foreground activity comes to background onStop() activity is no longer visible

19 Lets look at code again

20 Developing UIs in Android Drag and Drop UI development Using XML + Java Using Java alone (similar to Swing and AWT).

21 Layouts Layouts are defined in a layout file (e.g., main.xml) A layout is made up of Views and ViewGroups. Every layout file has one root view

22 Loading an XML resource When the application is compiled, each XML layout file is compiled into a View resource. This View resource should be loaded in your application code in Activity.onCreate() public void onCreate(Bundle savedInstance) { super.onCreate(savedInstance); setContentView(R.layout.main); }

23 Views and Widgets View is the basis of all UI elements such as Widgets (buttons, TextView, Menus, etc. etc.). It is superclass of all Widget classes Each View or ViewGroup object supports a bunch of XML attributes (properties) ID How do I create an instance of the Widget object from my Java code? android:id = (local resource) android:id = “android:id/zzz” (android resource) Button myButton = (Button) findViewById(R.id.my_button) <Button android:layout_height=“wrap_content” android:layout_width=“wrap_content” android:text=“My Button” />

24 Views and Widgets Layout parameters layout_width, layout_height, layout_margin, wrap_content : use space equal to the text inside the view uses fill_parent: use as much space as used by the parent view dip: density independent pixels Frame layout Designed to display one item at a time You can have multiple widgets but they will be positioned based on top left of the screen Relative layout Helps greatly when you want to place Views relative to previous views placed in the actvity Lets take an example

25 Other interfaces onLongClick() (View.onLongClickListener) When a user touches or holds an item onFocusChange() (View.onFocusChangeListener) Navigates onto or away from an item. onKey() (View.onKeyListener) User is focussed on an item and presses of releases a key

26 Handling UI events

27 Handling UI events

28 Assignment

29 Next class and todolist Continue on application basics for the Android Form your group Pls take a phone if you have already formed a group Set up eclipse with the android SDK and plugin if you have not done so Set up Windows Phone 7 IDE