SE2016 iOS Oleksandr Yefremov "Continuously delivering mobile project"
Project report on iOS
-
Upload
shantanu4234633 -
Category
Documents
-
view
222 -
download
0
Transcript of Project report on iOS
-
8/10/2019 Project report on iOS
1/19
iv
Contents
Topic Page No.
I. Introduction 1.
II. iOS Architecture 6.
III. iOS Features 11.
IV. Why Choose iOS ? 13.
V. Why Not Choose iOS ? 15.
VI. References 17.
-
8/10/2019 Project report on iOS
2/19
-
8/10/2019 Project report on iOS
3/19
Page | 2
History of iOS
The operating system was unveiled with the iPhone at the Macworld Conference & Expo,
January 9, 2007, and released in June of that year. At first, Apple marketing literature did
not specify a separate name for the operating system, stating simply that the "iPhone runs
OS X". Initially, third-party applications were not supported. Steve Jobs' reasoning was that
developers could build web applications that "would behave like native apps on the
iPhone". On October 17, 2007, Apple announced that a native Software Development Kit
(SDK) was under development and that they planned to put it "in developers' hands in
February". On March 6, 2008, Apple released the first beta, along with a new name for the
operating system: "iPhone OS".
Apple had released the iPod Touch, which had most of the non-phone capabilities of the
iPhone. Apple also sold more than one million iPhones during the 2007 holiday season.
On January 27, 2010, Apple announced the iPad, featuring a larger screen than the iPhone
and iPod Touch, and designed for web browsing, media consumption, and reading iBooks.
In June 2010, Apple rebranded iPhone OS as "iOS.
iOS 4.0 Homescreen: Image laptopmag.com
-
8/10/2019 Project report on iOS
4/19
Page | 3
Version History
iPhoneOS 1.01.1.5 :- First version, released in 2007 with iPhone
iPhoneOS 2.02.2.1 :- Released in 2008, new additions includeAppStore, VPN support,
etc.
iOS 3.03.1.3:- Renamed to iOS, launched along the first iPad in 2009.
iOS 4.04.3.5:- Added new features like FaceTime, voice support, multitasking, etc.
Launched with iPhone4, iPad2 & Apple TV in 2010.
iOS 5.05.1:- Brought Apples voice assistant Siri, notifications center, NewsStand app &
iCloud integration. Launched with iPhone 4S in 2011
iOS 6.06.1.5:- Brought improved Siri, new Passbook & Maps application. Launched with
iPhone 5 in 2012.
iOS 7.07.0.4 (current):- Totally redesigned look & feel, true multitasking. Launched with
iPhone 5S & 5C.
Look & FeelThe home screen (rendered by and also known as "SpringBoard") displays application icons
and a dock at the bottom of the screen where users can pin their most frequently used
apps. The home screen appears whenever the user unlocks the device or presses the
"Home" button (a physical button on the device) whilst in another app. The screen's
background can be customized with other customizations available through jailbreaking.
The screen has a status bar across the top to display data, such as time, battery level, and
signal strength. The rest of the screen is devoted to the current application. When a
passcode is set and a user switches on the device, the passcode must be entered at the Lock
Screen before access to the Home Screen is granted.
Before iOS 5, notifications were delivered in blue dialog box. This system of notification
management was greatly criticised. In the iOS 5 update, the notifications feature was
completely redesigned. Notifications collate in a window which can be dragged down from
the top of the screen. If a user touches a received notification, the application that sent the
notification will be opened. Notifications are now delivered in small banners that appear
over the status bar. The old method of delivering notifications is still available from
Notification Settings if the user wishes to enable it for some or all applications. When an app
sends a notification whilst closed, a red badge will appear on its icon. This badge tells the
-
8/10/2019 Project report on iOS
5/19
Page | 4
user, at a glance, how many notifications that app has sent. Opening the app clears the
badge.
The iOS home screen contains default "apps" such as Safari, the App Store, Siri, Mail, Music,
Videos, Messages, Calendar, Photos, Camera, FaceTime, Maps, Newsstand, iTunes, Game
Center, etc.
Before iOS 4, multitasking was limited to a selection of the applications Apple included on
the device. Starting with iOS 4, on third-generation and newer iOS devices, multitasking is
supported through seven background APIs.
In iOS 4.0 to iOS 6.x, double-clicking the home button activates the application switcher. A
scrollable dock-like interface appears from the bottom, moving the contents of the screen
up. Choosing an icon switches to an application. To the far left are icons which function as
music controls, a rotation lock, and on iOS 4.2 and above, a volume controller. Holding the
icons briefly makes them "jiggle" (similarly to the homescreen) and allows the user to force
quit the applications by simply tapping the red minus circle that appears at the corner of the
app's icon.
With the introduction of iOS 7, double clicking the home button also activates the
application switcher. However, unlike previous versions it displays screenshots of open
applications on top of the icon and horizontal scrolling allows for browsing through previous
apps, and it is possible to close applications by dragging them up, similar to how WebOShandled multiple cards.
Siri is a personal assistant and knowledge navigator which works as an application on
supported devices. The service, directed by the user's spoken commands, can do a variety of
different tasks, such as call or text someone, open an app, search the web, lookup sports
information, find directions or locations, and answer general knowledge questions (e.g.
"How many cups are in a gallon?"). Siri was updated in iOS 7 with a new interface, faster
answers, Wikipedia, Twitter, and Bing support and the voice was changed to sound more
human. Siri is currently only available on the iPhone 4S and later iPhones, the fifth-
generation iPod Touch, the iPad Mini, and the third-generation and later iPads.
Game Center is an online multiplayer "social gaming network" released by Apple. It allows
users to "invite friends to play a game, start a multiplayer game through matchmaking, track
their achievements, and compare their high scores on a leaderboard." iOS 5 and above adds
support for profile photos.
-
8/10/2019 Project report on iOS
6/19
Page | 5
Development
The applications must be written and compiled specifically for iOS. The SDK runs only on
Mac OS X.
Xcode IDE for iOS. Image courtesy Wikipedia.org
On October 17, 2007, in an open letter posted to Apple's "Hot News" weblog, Steve Jobs
announced that a software development kit (SDK) would be made available to third-party
developers in February 2008.[49] The SDK was released on March 6, 2008, and allows
developers to make applications for the iPhone and iPod Touch, as well as test them in an
"iPhone simulator". However, loading an application onto the devices is only possible after
paying an iPhone Developer Program fee.
The fees to join the respective developer programs for iOS and OS X were each set at $99.00
per year. As of July 20, 2011, Apple released Xcode on its Mac App Store free to download
for all OS X Lion users, instead of as a standalone download. Users can create and developiOS and OS X applications using a free copy of Xcode; however, they cannot test their
applications on a physical iOS device, or publish them to the App store, without first paying
the yearly $99.00 iPhone Developer or Mac Developer Program fee.
Developers are able to set any price above a set minimum for their applications to be
distributed through the App Store, keeping 70% for the developer, and leaving 30% for
Apple. Alternatively, they may opt to release the application for free and need not pay any
costs to release or distribute the application except for the membership fee.
-
8/10/2019 Project report on iOS
7/19
-
8/10/2019 Project report on iOS
8/19
Page | 7
a) UIKit Framework: The UIKit framework is a vast and feature rich Objective-C based
programming interface. It consists of
User interface creation and management (text fields, buttons, labels, colors, fonts etc)
Application lifecycle management
Application event handling (e.g. touch screen user interaction)
Cut, copy, and paste functionality
Web and text content presentation and management
Data handling
Inter-application integration
Push notification in conjunction with Push Notification Service
Accessibility
Accelerometer, battery, proximity sensor, camera and photo library interaction.
b) Map Kit Framework:The Map Kit framework provides a programming interface that
enables building map based capabilities into other applications. This allows, amongst
other things, to display scrollable maps for any location, display the mapcorresponding to the current geographical location of the device and annotate the
map in a variety of ways.
c) Push Notification Service:The Push Notification Service allows applications to notify
users of an event even when the application is not currently running on the device.
Since the introduction of this service it has most commonly been used by news based
applications. Typically when there is breaking news the service will generate a
message on the device with the news headline and provide the user the option to load
the corresponding news app to read more details. This alert is typically accompaniedby an audio alert and vibration of the device. This feature should be used sparingly to
avoid annoying the user with frequent interruptions.
d) Message UI Framework:The Message UI framework provides everything needed to
allow users to compose and send email messages from within any application. In fact,
the framework even provides the user interface elements through which the user
enters the email addressing information and message content. Alternatively, this
information can be pre-defined within the application and then displayed for the user
to edit and approve prior to sending.
e) Address Book UI Framework: Given that a key function of the iPhone is as a
communications device and digital assistant it should not come as too much of a
surprise that an entire framework is dedicated to the integration of the address book
data into your own applications. The primary purpose of the framework is to enable
you to access, display, edit and enter contact information from the iPhone address
book from within your own application.
f) Game Kit Framework: The Game Kit framework provides peer-to-peer connectivity
and voice communication between multiple devices and users allowing those runningthe same app to interact. When this feature was first introduced it was anticipated by
-
8/10/2019 Project report on iOS
9/19
Page | 8
Apple that it would primarily be used in multi-player games (hence the choice of
name) but the possible applications for this feature clearly extend far beyond games
development.
Media LayerThe role of the Media layer is to provide the iPhone OS with audio, video, animation and
graphics capabilities. As with the other layers comprising the iPhone OS stack, the Media layer
comprises a number of frameworks that can be utilized when developing iPhone apps. Some
of the frameworks included in the Media layer are:
1) Core Graphics Framework: The iPhone Core Graphics Framework (otherwise known
as the Quartz 2D API) provides a lightweight two dimensional rendering engine.
Features of this framework include PDF document creation and presentation, vector
based drawing, transparent layers, path based drawing, anti-aliased rendering, color
manipulation and management, image rendering and gradients.
2) OpenGL ES framework:For many years the industry standard for high performance
2D and 3D graphics drawing has been OpenGL. Originally developed by the now
defunct Silicon Graphics, Inc (SGI) during the 1990s in the form of GL, the open version
of this technology (OpenGL) is now under the care of a non-profit consortium
comprising a number of major companies including Apple, Inc., Intel, Motorola and
ARM Holdings.
Architecture of iOS
bada.com
-
8/10/2019 Project report on iOS
10/19
Page | 9
3) iPhone Audio Support:The iPhone OS is capable of supporting audio in AAC, Apple
Lossless (ALAC), A-law, IMA/ADPCM, Linear PCM, -law, DVI/Intel IMA ADPCM,
Microsoft GSM 6.10 and AES3-2003 formats
4)
Open Audio Library: OpenAL is a cross platform technology used to provide high-
quality, 3D audio effects (also referred to as positional audio). Positional audio can be
used in a variety of applications though is typically using to provide sound effects in
games.
5) Media Player framework: The iPhone OS Media Player framework is able to play video
in .mov, .mp4, .m4v, and .3gp formats at a variety of compression standards,
resolutions and frame rates.
Core Services
The Core Services layer contains fundamental system services for apps. Key among these
services are the Core Foundation and Foundation frameworks, which define the basic types
that all apps use. This layer also contains individual technologies to support features such as
location, iCloud, social media, and networking.
The various frameworks included in this layer are:
Address Book framework
Core Data Framework
Core Foundation Framework
Foundation Framework
Core Location Framework
Store Kit Framework
SQLite library
Core OS
The Core OS Layer is the bottom layer of the iPhone OS stack and sits directly on top of the
device hardware. The layer provides a variety of services including low level networking,
access to external accessories and the usual fundamental operating system services such as
memory management, file system handling and threads.
The iPhone OS is built upon a UNIX-like foundation. The System component of the Core OS
Layer provides much the same functionality as any other UNIX like operating system. This
layer includes the operating system kernel (based on the Mach kernel developed by Carnegie
Mellon University) and device drivers. The kernel is the foundation on which the entire iPhone
-
8/10/2019 Project report on iOS
11/19
Page | 10
OS is built and provides the low level interface to the underlying hardware. Amongst other
things the kernel is responsible for memory allocation, process lifecycle management,
input/output, inter-process communication, thread management, low level networking, file
system access and thread management. This system component is known as Darwin system
& is based on the open-source XNU project.
-
8/10/2019 Project report on iOS
12/19
-
8/10/2019 Project report on iOS
13/19
-
8/10/2019 Project report on iOS
14/19
Page | 13
Entertainment: The iPhone & the iPad provides various options for personal
entertainment like photos & videos apps for viewing photos & videos respectively to
iTunes for listening to music. The entertainment options are exciting & provides a
great visual treat to the eye.
Music player in iOS
Image Apple.com
App Store in iOS
Image Apple.com
-
8/10/2019 Project report on iOS
15/19
Page | 14
Why Choose iOS ?
iOS revolutionized the way we use our mobile phones today. The ecosystem developed by
Apple like finger-friendly touch & 3rdparty apps were an inspiration for other mobile OSs
such as Android & Windows Phone.
Naturally, the iPhone which runs iOS is the largest selling mobile phone in the history.
The various reasons for choosing iOS over other platforms are:
1) Intuitive User Interface:iOSprovides excellent touch response with outstanding user
interface that keeps one hooked for long. The UI is beautifully designed keeping
usability in mind. Apple enforces strict design guidelines for 3rd
party apps to matchits look & feel requirements. Apples iOS changed the definition of touchscreen-finger
interaction and provided a human touch to its UI keeping usability in mind.
2) Excellent Multimedia Features: The iOS is an entertainment platform that provides
excellent music & video playback. The photos taken with the camera look awesome
on the high resolution display. iOS supports HD video recording & playback for
optimum user experience.
Playing Angry Birds on iOS
-
8/10/2019 Project report on iOS
16/19
Page | 15
3) High Quality Apps:Apple maintains strict standards when it comes to distribution of
3rdparty apps through its app store. This makes sure that only secure, good quality
apps reach the end users. Some hugely popular apps and games such as Angry Birds,
Flipboard, WhatsApp & Subway Surfer first were first made for iOS. Still most new
apps & games come to iOS first before to other platforms. Apples hardware is highly
optimized so that there are no issues faced by the users regarding apps & games
performance.
4) Stable OS:iOS is highly optimized to run on Apple hardware for optimum performance
& usability. iOS does not bring the nuisances that come with open source software
such as major usability bugs or broken features. This makes iOS rock stable in
comparison to its main competitorAndroid.
-
8/10/2019 Project report on iOS
17/19
Page | 16
Why Not Choose iOS ?
Despite being immensely popular and successful, iOS still has its own share of
disadvantages. Some of them are:
1) Pricey Hardware:Compared to other competing platform, iOS devices cost a lot
more. Cost terms out to be a limiting factor when it comes to penetration of the
platform in emerging markets such as India where mobile devices are not sold on
subsidy.
2)
Closed Source:iOS is entirely closed source including the Darwin subsystem which is
otherwise open sourced in MacOS. This leads to users dependency on Apple to
provide upgrades & bug fixes whenever any issue is detected. There has been many
complaints regarding bugs being ignored by Apple or taking long time to push a fix.
3) Requires a Mac to build & test apps: iOS apps can only be built & tested system
running MacOS. A PC running Windows cannot be used. This adds a substantial cost
factor for app developers apart from the $99 developer fee per year.
Cost is the major limiting factor for iOS
Image courtesy Flipkart.com
-
8/10/2019 Project report on iOS
18/19
Page | 17
4) Software limitations:Analysts call Apple ecosystem as Walled Garden. Apple has
put up plenty of restrictions to prevent any misuse of the devices. This includes
blocking apps that do not meet their design or content guidelines from the app
store, locking the devices so that custom modifications cannot be made, not allowing
to share content such as music via Bluetooth, not allowing to install apps that are not
from the app store, etc.
There are workarounds, however, like jailbreaking & unlocking but that is too
complicated for regular users & may void the devices warranty.
-
8/10/2019 Project report on iOS
19/19
Page | 18
References
1. https://www.apple.com/in/ios/
2. http://en.wikipedia.org/wiki/IOS
3. https://developer.apple.com/library/ios/documentation/miscellaneous/conceptual/i
phoneostechoverview/Introduction/Introduction.html
4. http://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Framew
orks
5. Mac OS X & iOS Internals by Jonathan Levin, Wiley Publications
https://www.apple.com/in/ios/https://www.apple.com/in/ios/http://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttp://www.techotopia.com/index.php/The_iPhone_OS_Architecture_and_Frameworkshttps://www.apple.com/in/ios/