Download presentation
Presentation is loading. Please wait.
Published byKelley Ward Modified over 9 years ago
1
UFCFX5-15-3Mobile Device Development Anatomy of a Mobile Device
2
UFCFX5-15-3Mobile Device Development Agenda Smartphone hardware architecture CPU and GPU Memory & storage Displays Connectivity & Sensors History of Android operating system Android operating system architecture History of iOS operating system iOS operating system architecture
3
UFCFX5-15-3Mobile Device Development Application software Smartphone hardware architecture Display Camera µphone sensors Main Memory GPUCPU Operating System and drivers Runtime Middleware Operating System and Baseband radio interface Modem processors Sim card Transmitter/ receiver
4
UFCFX5-15-3Mobile Device Development Central Processing Unit (CPU) ARM architecture (majority) System-on-a-Chip 32-bit or 64-bit. Low power consumption Multi-core
5
UFCFX5-15-3Mobile Device Development Graphics Processing Unit (GPU) System-on-a-Chip Low power consumption Accelerate 3D rendering Media decoding
6
UFCFX5-15-3Mobile Device Development Memory and Storages RAM (Random Access Memory) Very fast Lose contents when power-off Internal storage and ROM Store the operating system and critical files Store user and app data Fast access Removable storage Supported by Android only Store user and app data Not always available
7
UFCFX5-15-3Mobile Device Development Display Type one: LCD Cheap to produce Accurate color reproduction Need backlight Limited viewing angles Type two: AMOLED Actively emits colors Vibrant colors and high contrast Excellent viewing angles Shorter lifespan than LCDs Inaccurate color reproduction
8
UFCFX5-15-3Mobile Device Development Connectivity & Sensors Connectivity Wi-Fi (can be used as Wi-Fi hotspot) 3G or 4G data service (3G speed: <200K ; 4G speed <1000K) Bluetooth (range from 1m to 100m) Near field communication (NFC) (range < 20 cm) Sensors GPS: detect outdoor location Accelerometers: detect screen orientation, movements Gyroscope : game controls proximity sensor: detect objects nearby Temperature, heart beat and mores
9
UFCFX5-15-3Mobile Device Development First version of android Initial release: Oct. 2008 NO on-screen keyboard NO multitouch capability NO paid apps The pull-down notification window Deep, rich Gmail integration The Android Market Home screen widgets
10
UFCFX5-15-3Mobile Device Development Early versions of android Version 1.5 cupcake and Version 1.6 Donut An on-screen keyboard Extensible widgets Video capture and playback Version 2.1 – Version 2.3 multitouch capability Support for front-facing cameras Screen PIN protection Version 3.x Targeted exclusively at tablets The death of physical buttons Improved multitasking
11
UFCFX5-15-3Mobile Device Development Current versions of android Version 4.0 Ice Cream Sandwich NFC support Face unlock Data usage analysis Version 4.1 to 4.3 Support panoramic image Predictive text support OpenGL ES 3.0 Version 4.4 KitKat Full screen apps (Immerse yourself) Google Cloud Print Improved Quickoffice app
12
UFCFX5-15-3Mobile Device Development Current versions of android Version 4.0 Ice Cream Sandwich NFC support Face unlock Data usage analysis Version 4.1 to 4.3 Support panoramic image Predictive text support OpenGL ES 3.0 Version 4.4 KitKat Full screen apps (Immerse yourself) Google Cloud Print Improved Quickoffice app
13
UFCFX5-15-3Mobile Device Development Android Architecture
14
UFCFX5-15-3Mobile Device Development Application Framework Activity Manager android.activity Manages the activity life cycle of applications Content Providers android.provider Manage the data sharing between applications Telephony Manager android.telephony Manages all voice calls. Location Manager android.location Location management, using GPS or cell tower Resource Manager Manage the various types of resources we use in our App
15
UFCFX5-15-3Mobile Device Development Libriaries OpenGL ES android.opengl The OpenGL ES is a 3D graphics library. SQLite android.database.sqlite Contains the SQLite database management classes Media Framework The media framework contains all of the codecs that are required for multimedia experience. FreeType: used to render the fonts SSL: used for internet security WebKit: open source browser engine
16
UFCFX5-15-3Mobile Device Development Linux Kernal Based on Linux 2.6 kernel but Android is not Linux. Does not include the full set of standard Linux utilities No native windowing system Used as a hardware abstraction layer A lot works in power management Open Source: provide libraries to modify hardware drivers It is possible to make your own version of android
17
UFCFX5-15-3Mobile Device Development Early versions of iOS Before iOS: OS X Based on Mach Kernel (a type of UNIX system) First version: iPhone OS (OS X for iPhone) 2007 Didn't support 3G Didn't support multitasking Didn't support 3rd party apps Couldn't copy or paste text Apple focused on user experiences Have a pinch-to-zoom function iPhone OS 2.0 The App Store The development SDK
18
UFCFX5-15-3Mobile Device Development Current versions of iOS iOS7 Big changes in UI Add a Control Center (copied from Android) Add AirDrop for sharing Free iWork (document editing tools) Changed a lot of APIs Touch ID iOS 8 iCloud Drive HealthKit HomeKit
19
UFCFX5-15-3Mobile Device Development iOS Architecture Core OS: kernel, file system, network, security, power management, device drivers Core Services: memory management, hardware services such as GPS, compass, accelerometer, … Media: Core Graphics, Core Text, OpenGL ES, Core Animation, AVFoundation, Core Audio, and video playback Cocoa Touch: UIKit, Game Kit, Map Kit, and iAd
20
UFCFX5-15-3Mobile Device Development UIKit Architecture
21
UFCFX5-15-3Mobile Device Development iOS Development Resources Official iOS development resource https://developer.apple.com/ Example projects Tutorials Technical questions Get answer from Google Watch for stackoverflow.com for answers Example projects in categories http://code4app.net/
22
UFCFX5-15-3Mobile Device Development Summary Smartphone is a versatile device. It is a powerful and portable computer with a lot sensors. Android operation system is the most popular OS on smartphone. Java is the main language used for app development. Android OS is open-source and it can be customized. iOS operating system is the second most popular OS. Object-C is the official development language. iOS is for iPhone, iPad, iPod only. Several third part platforms/API can be used to develop cross platform app. (such as Unity, Phone Gap )
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.