Project report on iOS

download Project report on iOS

of 19

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/