Download - Getting started with Android Programming
Getting Started with Android Programming
CPTR322: Mobile Application Development
Henry Osborne
Adapted: Beginning Android 4 Application Development 2
What is Android?
• Mobile operating system based on a modified version of Linux
• Developed by startup, Android, Inc.
• Acquired by Google in 2005
• Code released under the open source Apache License
• Offers a unified approach to application development
Adapted: Beginning Android 4 Application Development 3
Android Versions
Version Release Date Codename
1.1 9 February 2009
1.5 30 April 2009 Cupcake
1.6 15 September 2009 Donut
2.0/2.1 26 October 2009 Éclair
2.2 20 May 2010 Froyo
2.3 6 December 2010 Gingerbread
3.0/3.1/3.2 22 February 2011 Honeycomb
4.0 19 October 2011 Ice Cream Sandwich
Adapted: Beginning Android 4 Application Development 4
Android Versions, cont’d
Version Release Date Codename
4.1/4.2/4.3 27 June 2012 Jelly Bean
4.4 3 September 2013 KitKat
Adapted: Beginning Android 4 Application Development 5
Historical Android version distribution according to Android Market/Play Store usage. From December 2009 to December 2013.
Adapted: Beginning Android 4 Application Development 6
Android Versions, cont’d
• Android 3.0, tablet-only release supporting widescreen devices
• Key changes are:• UI optimized for tablets
• 3D desktop with new widgets
• Refined multi-tasking
• New web browser features
• Multi-core processor support
Adapted: Beginning Android 4 Application Development 7
Android Versions, cont’d
• Android 4.0 brought all the features of 3.0 to smartphones
• New features include:• Facial recognition unlock
• Data usage monitoring
• Near Field Communication (NFC)
Adapted: Beginning Android 4 Application Development 8
Features of Android
• Storage – uses SQLite
• Connectivity – supports GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, and WiMAX
• Messaging – SMS and MMS
• Web browser – WebKit with Chrome’s V8 JavaScript engine
• Media support – H.263, H.264, MPEG-4 SP, AMR, AAC, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP
Adapted: Beginning Android 4 Application Development 9
Features of Android, cont’d
• Hardware support – Accelerometer Sensor, Camera, Digital Compass, Proximity sensor, and GPS
• Multi-touch
• Multi-tasking
• Flash support – Android 2.3 supports Flash 10.1
• Tethering – Internet connection sharing as a hotspot
Adapted: Beginning Android 4 Application Development 10
Android Architecture
• Linux kernel – contains all the low-level device drivers for the various hardware components
• Libraries – contain all the code that provides the main features of an Android OS.
• Android runtime – a set of core libraries that enable app development using JAVA
• Application framework – Exposes the various capabilities of the OS to developers so that they can be used in applications
• Applications – applications that ship with the device as well as downloaded and installed
Adapted: Beginning Android 4 Application Development 11
Adapted: Beginning Android 4 Application Development 12
Devices in the Marketplace
• Smartphones
• Tablets
• E-readers
• Netbooks
• MP4 Players
• Internet TVs
Adapted: Beginning Android 4 Application Development 13
Operating System3Q13 Shipment
Volumes3Q13 Market
Share3Q12 Shipment
Volumes3Q12 Market
ShareYear-Over-Year
Change
Android 211.6 81.0% 139.9 74.9% 51.3%
iOS 33.8 12.9% 26.9 14.4% 25.6%
Windows Phone 9.5 3.6% 3.7 2.0% 156.0%
BlackBerry 4.5 1.7% 7.7 4.1% -41.6%
Others 1.7 0.6% 8.4 4.5% -80.1%
Total 261.1 100.0% 186.7 100.0% 39.9%
Top Four Operating Systems, Shipments, and Market Share, Q3 2013 (Units in Millions)
Source: IDC Worldwide Mobile Phone Tracker, November 12, 2013
Adapted: Beginning Android 4 Application Development 14
Android Market
• Announced in August 2008, available to users October 2008
• Paid applications available only to users in certain countries due to legal restrictions• Users can buy from the Android Market but developers cannot sell
in that country.
• India: users can buy but developers cannot sell
• S. Korea: users cannot buy but developers can sell apps
Getting Started with Android Programming
CPTR322: Mobile Application Development