• Aucun résultat trouvé

Android Overview

N/A
N/A
Protected

Academic year: 2022

Partager "Android Overview"

Copied!
41
0
0

Texte intégral

(1)

Android Overview

Dr. Siddharth Kaza Dr. Josh Dehlinger

(2)

Why Mobile App Development?

The fact that we can! Only a few years ago you had to be in the Motorola inner circle to do it!

Mobile platform is the platform of the future

Double-digit growth in world-wide smartphone ownership3

Job market is hot

Market for mobile software surges from $4.1 billion in 2009 to $17.5 billion by 20121

2010 Dice.com survey: 72% of recruiters looking for iPhone app developers, 60% for Android1

Dice.com: mobile app developers made $85,000 in 2010 and salaries expected to rise2

Students (and faculty!) are naturally interested!

1 http://www.businessweek.com/technology/content/oct2010/tc20101020_639668.htm

2 http://it-jobs.fins.com/Articles/SB129606993144879991/Mobile-App-Developers-Wanted-at-Ad-Agencies 3http://www.gartner.com/it/page.jsp?id=1466313

(3)

Why Android?

A lot of students have them

2010 survey by University of CO1: 22% of college students have Android phone (26% Blackberry, 40%

iPhone)

Gartner survey2: Android used on 22.7% of smartphones sold world-wide in 2010 (37.6%

Symbian, 15.7% iOS)

Students already know Java and Eclipse

Low learning curve

CS0 students can use App Inventor for Android

1http://testkitchen.colorado.edu/projects/reports/smartphone/smartphone-appendix1/

2http://www.gartner.com/it/page.jsp?id=1543014

(4)

Why Android?

Transferring app to phone is trivial

Can distribute by putting it on the web

Android Market (now Google Play) for wider distribution

It’s not 1984

(5)

Types of Android

Devices

(6)

Various Android Phones

(7)

Galaxy Note 3

(8)

Galaxy Tablet

(9)

Android-Powered Microwave

http://www.pocket-lint.com/news/30712/android-powered-microwave-cookin g-google

By Touch Revolution – at CES 2010

(10)

Android-Powered Watch

(11)

Android-Powered Camera

(12)

Android-Powered TV

(13)

Android-Powered Car Radio

(14)

Android-Powered Washing

Machine

(15)

Android-Powered PC

(16)

Brief History

1996

The WWW already had websites with color and images

But, the best phones displayed a couple of lines of monochrome text!

Enter:

Wireless Application Protocol (WAP) – stripped down HTTP for bandwidth reduction

Wireless Markup Language (WML) – stripped down HTML for content

(17)

Brief History

Many issues (WAP = “Wait And Pay”)

Few developers to produce content (it wasn’t fun!)

Really hard to type in URLs using the small keyboards

Data fees frightfully expensive

No billing mechanism – content difficult to monetize

Other platforms emerged

Palm OS, Blackberry OS, J2ME, Symbian (Nokia), BREW, OS X iPhone, Windows Mobile

(18)

Brief History - Android

2005

Google acquires startup Android Inc. to start Android platform

Work on Dalvik VM begins

2007

Open Handset Alliance announced

Early look at SDK

2008

Google sponsors 1st Android Developer Challenge

T-Mobile G1 announced

SDK 1.0 released

Android released open source (Apache License)

Android Dev Phone 1 released

(19)

Brief History cont.

2009

SDK 1.5 (Cupcake)

New soft keyboard with “autocomplete” feature

SDK 1.6 (Donut)

Support Wide VGA

SDK 2.0/2.0.1/2.1 (Eclair)

Revamped UI, browser

2010

Nexus One released to the public

SDK 2.2 (Froyo)

Flash support, tethering

SDK 2.3 (Gingerbread)

UI update, system-wide copy-paste

(20)

Brief History cont.

2011

SDK 3.x (Honeycomb)

Optimized for tablet support

SDK 4.0 (Ice Cream Sandwich)

Virtual UI buttons

2012

SDK 4.1.1 (Jelly Bean)

Triple buffered graphics pipeline

(21)

Hon eycom

b

And roid

3.0 -3.2

Brief History cont.

2011

SDK 3.0/3.1/3.2 (Honeycomb) for tablets only

New UI for tablets, support multi-core processors

SDK 4.0/4.0.1/4.0.2/4.0.3 (Ice Cream Sandwich)

Changes to the UI, Voice input, NFC

Ice cream Sandwich

Android 4.0+

Jelly Bean

Android 4.1.1

(22)

Distribution of Devices

Data collected during a 14-day period ending on January 3, 2012

http://developer.android.com/resources/dashboard/platform-versions.html

(23)

Distribution of Devices

http://developer.android.com/resources/dashboard/platform-versions.html

(24)

What is Google Android?

A software stack for mobile devices that includes

An operating system

Middleware

Key Applications

Uses Linux to provide core system services

Security

Memory management

Process management

Power management

Hardware drivers

(25)

Android Architecture

More details at: http://developer.android.com/guide/basics/what-is-android.html

(26)

Mobile Devices: Advantages

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

(27)

Mobile Devices: Disadvantages

Limited screen size

Limited battery life

Limited processor speed

Limited and sometimes slow network access

Limited or awkward input: soft keyboard, phone keypad, touch screen, or stylus

Limited web browser functionality

Range of platforms & configurations across devices link

(28)

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

(29)

Android Apps

Built using Java and new SDK libraries

No support for some Java libraries like Swing &

AWT

Java code compiled into Dalvik byte code (.dex)

Optimized for mobile devices (better memory management, battery utilization, etc.)

Dalvik VM runs .dex files

(30)

Development process for an Android app

http://developer.android.com/guide/developing/index.html

(31)

Building and running

ADB is a client server program that connects clients on developer machine to devices/emulators to facilitate development.

An IDE like Eclipse handles this entire process for you.

http://developer.android.com/guide/developing/building/index.html#detailed-build

Compiled resources (xml files)

Android Debug Bridge

(32)

Building and Running

(33)

Applications Are Boxed

By default, each app is run in its own Linux process

Process started when app’s code needs to be executed

Threads can be started to handle time-consuming operations

Each process has its own Dalvik VM

By default, each app is assigned unique Linux ID

Permissions are set so app’s files are only visible to that app

(34)

Android Architecture

(35)

Publishing and Monetizing

Paid apps in Android Market, various other markets

Free, ad-supported apps in Android Market

Ad networks (Google AdMob, Quattro Wireless)

Sell your own ads

Services to other developers

Ex. Skyhook Wireless (http://www.skyhookwireless.com/)

Contests (Android Developer Challenge)

Selling products from within your app

(36)

Android Market (Google Play)

https://play.google.com/store

Has various categories, allows ratings

Have both free/paid apps

Featured apps on web and on phone

The Android Market (and iTunes/App Store) is great for developers

Level playing field, allowing third-party apps

Revenue sharing

(37)

Publishing to Google Play

Requires Google Developer Account

$25 fee

Link to a Merchant Account

Google Checkout

Link to your checking account

Google takes 30% of app purchase price

(38)
(39)
(40)

Android Design Philosophy

Applications should be:

Fast

Resource constraints: <200MB RAM, slow processor

Responsive

Apps must respond to user actions within 5 seconds

Secure

Apps declare permissions in manifest

Seamless

Usability is key, persist data, suspend services

Android kills processes in background as needed

(41)

Other design principles

http://developer.android.com/design/index.html

Great reference!

Références

Documents relatifs

Ähnlich wie beim Android Market ist der AppStore auch eine eigenständige Applikation und kann auf einem iPhone oder einem iPod Touch verwendet werden.. Über die Applikation

Lorsqu'un nouveau parcours est créé ou que le client souhaite interrompre le parcours en cours, il a la possibilité de sauvegarder celui-ci dans sa liste de parcours

/ Fax.: +216 73362 100 Email: contact@itgate-training.com Web: www.itgate-training.com Adresse : 12 Rue Abdelkadeur Daghrir - Hammam Sousse 4011 – Tunisie.. Formation Android

Florida State University College of Law Research Center.. Android Apps

• When a component initiates ICC, the reference monitor looks at the permission labels assigned to its containing application and— if the target component’s access permission

• It is a open source software platform and operating system for mobile devices.. • Based on the

• An intent is an object which can have a message content and start Activities, services and broadcast receivers. - ContentProvider is started

[r]