The document summarizes the layer architecture of iOS. It describes 6 layers - Cocoa Touch, Media, Core Services, Core OS. Cocoa Touch contains frameworks like UIKit for building interfaces. Media layer contains frameworks for graphics, audio and video. Core Services contains lower level frameworks for networking, data storage and location services. Core OS sits atop hardware and provides fundamental OS services.
Summer training report on Android OS
This ppt covers almost all topics related to android including Introduction, History, Version, Architecture, Application Development, Code implementation and execution, Advantages and disadvantages.
iOS: Overview, Architecture, Development & Versions Sandra Kerbage
This is a simple presentation about iOS providing some information concerning its history, versions, layered architecture, how to build your first application, iOS development
Get an overview of the current market of mobile operating systems. Learn about current market shares, the major players and some key topics of each system.
Contents:
* Mobile Phones: Market Share and Operating Systems
* Symbian Foundation / Symbian OS
* Android
* Mac OS X (iPhone)
* Others (Windows Mobile, BlackBerry, Palm, Linux)
* Cross-platform: Java ME
* Future
This presentation tries to give an overview of the fascinating world of mobile development. It is not the purpose to give any details on a given technology, but it tries to give an overview of the various possibilities. Although the presentation looks at technologies and initiatives from various parts of the industry there are some more details on a certain number of IBM initiative given my background.
Introduction to Android and Android StudioSuyash Srijan
This is a presentation that I gave at Google Developer Group Oxford to introduce people to Android development and Android Studio IDE, which is used to build Android apps. This presentation gives a brief overview of the platform and fundamentals of the app and what developer tools are available.
PS: Some slides do not have any text accompanying it. That is either because it wasn't relevant or because the text would've been too long to put on the corresponding slide.
A for Android !! yes it really awesome Android is getting famous day by day. I have created this paper presentation for a conference so I would like to share it. Let's see a short note about an Android OS in ppt. for more visit www.soontips.com
Summer training report on Android OS
This ppt covers almost all topics related to android including Introduction, History, Version, Architecture, Application Development, Code implementation and execution, Advantages and disadvantages.
iOS: Overview, Architecture, Development & Versions Sandra Kerbage
This is a simple presentation about iOS providing some information concerning its history, versions, layered architecture, how to build your first application, iOS development
Get an overview of the current market of mobile operating systems. Learn about current market shares, the major players and some key topics of each system.
Contents:
* Mobile Phones: Market Share and Operating Systems
* Symbian Foundation / Symbian OS
* Android
* Mac OS X (iPhone)
* Others (Windows Mobile, BlackBerry, Palm, Linux)
* Cross-platform: Java ME
* Future
This presentation tries to give an overview of the fascinating world of mobile development. It is not the purpose to give any details on a given technology, but it tries to give an overview of the various possibilities. Although the presentation looks at technologies and initiatives from various parts of the industry there are some more details on a certain number of IBM initiative given my background.
Introduction to Android and Android StudioSuyash Srijan
This is a presentation that I gave at Google Developer Group Oxford to introduce people to Android development and Android Studio IDE, which is used to build Android apps. This presentation gives a brief overview of the platform and fundamentals of the app and what developer tools are available.
PS: Some slides do not have any text accompanying it. That is either because it wasn't relevant or because the text would've been too long to put on the corresponding slide.
A for Android !! yes it really awesome Android is getting famous day by day. I have created this paper presentation for a conference so I would like to share it. Let's see a short note about an Android OS in ppt. for more visit www.soontips.com
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Slides presented at #Pragma Conference 2013
http://pragmamark.org/eventi/pragma-conference-2013/
http://pragmamark.org/sessioni/pragma-conference-2013-building-ios-app-project-and-architecture/
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Study of similiarities and difference between android and ios system archiitecture in operating system perspective like thread management process management memory management etc more technical details
This short part will introduce you to the world of Symbian OS mobile phones. It contains some high level information about the Symbian Foundation as well as Symbian OS, what you'll need to start developing and gives you some tips for literature. Some of the projects that we developed at the University of Applied Sciences in Hagenberg are demonstrated, in order to give you an overview of what you can do based on various variants of Symbian OS based or Nokia platform phones.
Contents:
* Introduction to Symbian Foundation and Symbian OS
* History of Symbian (OS)
* Platform Overview
* User Interfaces
* IDEs and Development
* Community and Possibilities
* Recommended Literature
* Symbian Academy
Dia 0 expectativas y objetivos de los presentesHernan Zaldivar
En este curso de 4 días se intentará dar un pantallazo general sobre el mundo mobile, su distribución a nivel mundial, tips sobre que hace especial a esta plataforma y una introducción a Xamarin para el desarrollo de aplicaciones nativas tanto en Android como iOs.
Greens Technology is a leading Training and Placement company in Chennai. We are
known for our practical approach towards trainings that enable students to gain real-
time exposure on competitive technologies. Trainings are offered by employees from
MNCs to give a real corporate exposure.
This PowerPoint presentation is an introductory guide to iOS app development. It covers the basics of iOS app development tools, design and development guidelines, best practices, steps involved, technology layers, advantages, and key differences between iOS and Android app development. The presentation is intended for beginners and aspiring app developers who are new to iOS app development. By the end of the presentation, the audience will have a basic understanding of the fundamentals of iOS app development.
Webinar: Impact of iOS 8 on App Marketers and App DevelopersJayneel Patel
OpenXcell Technolabs in collaboration with AppN2O organized a webinar on impact of iOS8. The webinar was focused on new Features of iOS 8 affecting app developers and app marketers.
Following points were discussed during the webinar:
- Benefits and Management of new iOS 8 features.
- Impact of iOS 8 on the Marketing and Monetization aspects of an app.
- Challenges associated with regard to the new app development and existing app management.
- Effective strategies and best practices to cope up with the changes and adapting new features of iOS.
The trending strategy of developing a business mobile app is proving a successful one for over a decade. Diverse industries have been making the most of mobility solutions for various purposes, be it going digital and improving the platform experience or enhancing customer services by bringing the services and products to the users’ fingertips.
Anyone not having an in-house dev team will hire a top iPhone application development company to build an app for Apple devices, targeting Apple users. This is called a native iOS app development process. Similarly, there is native Android app development to target Android users, and then comes cross-platform app development which helps to build mobile apps used by both iOS and Android users collectively.
The trending strategy of developing a business mobile app is proving a successful one for over a decade. Diverse industries have been making the most of mobility solutions for various purposes, be it going digital and improving the platform experience or enhancing customer services by bringing the services and products to the users’ fingertips.
Anyone not having an in-house dev team will hire a top iPhone application development company to build an app for Apple devices, targeting Apple users. This is called a native iOS app development process. Similarly, there is native Android app development to target Android users, and then comes cross-platform app development which helps to build mobile apps used by both iOS and Android users collectively.
This presentation is about-
a)Core Syntax
b)Structure
c)Playgrounds,Variables,Constants,Print,Convert.
d)IF,Switch,Loop
e)Functions
f)Complex Types
g)Arrays
h)Dictionary,Tuples,Optional,Enum,Closures.
For more details visit -
http://vibranttechnologies.co.in/ios-classes-in-mumbai.html
Presentation on how to use Flash for Blackberry,iPhone and Android. http://www.mindgrub.com/NAB
iPhone has long shunned having the flash player on their phones. Some companies have made emulators but the apps are getting rejected from the store. Blackberry and Android however are embracing the use of the Flash Platform and you should too. Come find out how to make Flash CS4 applications for Blackberry and Android.
How to Choose the Best Platform for iOS App Development?SemaphoreSoftware1
Don’t worry if you do not have answers to all these questions, you have landed at the right place. In this guide, we have given insights on iOS app development platforms, what factors to consider while choosing a platform, and how much does it cost.
Let’s start with the various platforms used.
https://www.semaphore-software.com/hire-ios-developers/
iPhone is a new and widely extended platform to develop object-oriented applications. In 2008 Apple sold 13.7 millions of devices. In the same year the software development kit for iPhone was downloaded about 800,000 times (according with Apple records) and right now there are 50,000 iPhone Developers subscribed to the Official iPhone Developer Program.
http://www.oopsla.org/oopsla2009/program/tutorials/145-programming-with-iphone-sdk
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdfTechSoup
In this webinar you will learn how your organization can access TechSoup's wide variety of product discount and donation programs. From hardware to software, we'll give you a tour of the tools available to help your nonprofit with productivity, collaboration, financial management, donor tracking, security, and more.
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Embracing GenAI - A Strategic ImperativePeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
Instructions for Submissions thorugh G- Classroom.pptxJheel Barad
This presentation provides a briefing on how to upload submissions and documents in Google Classroom. It was prepared as part of an orientation for new Sainik School in-service teacher trainees. As a training officer, my goal is to ensure that you are comfortable and proficient with this essential tool for managing assignments and fostering student engagement.
Honest Reviews of Tim Han LMA Course Program.pptxtimhan337
Personal development courses are widely available today, with each one promising life-changing outcomes. Tim Han’s Life Mastery Achievers (LMA) Course has drawn a lot of interest. In addition to offering my frank assessment of Success Insider’s LMA Course, this piece examines the course’s effects via a variety of Tim Han LMA course reviews and Success Insider comments.
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
2. Introduction
• the hardware that is contained within an iPhone 4
device.
• When we develop apps for the iPhone Apple does not
allow us direct access to any of this hardware.
• In fact, all hardware interaction takes place exclusively
through a number of different layers of software that
act as intermediaries between the application code
and device hardware.
• These layers make up what is known as an operating
system. In the case of the iPhone, this operating system
is known as iOS.
3. The iOS 4 Architecture
• iOS consists of a number of different software
layers, each of which provides programming
frameworks for the development of
applications that run on top of the underlying
hardware.
4. • each operating system layer provides an increasing level of abstraction
away from the complexity of working with the hardware.
• As an iOS developer you should, therefore, always look for solutions to
your programming goals in the frameworks located in the higher level iOS
layers before resorting to writing code that reaches down to the lower
level layers.
• In general, the higher level of layer you program to, the less effort and
fewer lines of code you will have to write to achieve your objective. And as
any veteran programmer will tell you, the less code you have to write the
less opportunity you have to introduce bugs.
• Now that we have identified the various layers that comprise iOS 4 we can
now look in more detail at the services provided by each layer and the
corresponding frameworks that make those services available to us as
application developers.
5. The iPhone iOS 4 Cocoa Touch Layer
• The Cocoa Touch layer sits at the top of the iOS
stack and contains the frameworks that are most
commonly used
by iPhone application developers. Cocoa Touch is
primarily written in Objective-C, is based on the
standard Mac OS X Cocoa API (as found on Apple
desktop and laptop computers) and has been
extended and modified to meet the needs of
the iPhone. The Cocoa Touch layer provides the
following frameworks
for iPhone app development:
6. UIKit Framework (UIKit.framework)
• The UIKit framework is a vast and feature rich Objective-C based programming interface. It is, without question,
the framework with which you will spend most of your time working. Entire books could, and probably will, be
written about the UIKit framework alone. Some of the key features of UIKit are as follows:
•
User interface creation and management (text fields, buttons, labels, colors, fonts etc)
• Application lifecycle management
• Application event handling (e.g. touch screen user interaction)
• Multitasking
• Wireless Printing
• Data protection via encryption
• 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
• Local notifications (a mechanism whereby an application running in the background can gain the user’s attention)
• Accessibility
• Accelerometer, battery, proximity sensor, camera and photo library interaction.
• Touch screen gesture recognition
• File sharing (the ability to make application files stored on the device available via iTunes)
• Blue tooth based peer to peer connectivity between devices
• Connection to external displays
• To get a feel for the richness of this framework it is worth spending some time browsing Apple’s UIKit reference
material which is available online at:
• http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIKit_Framework/index.html
7. Map Kit Framework
(MapKit.framework)
• If you have spent any appreciable time with an iPhone
then the chances are you have needed to use
the Maps application more than once, either to get a
map of a specific area or to generate driving directions
to get you to your intended destination. The Map Kit
framework provides a programming interface that
enables you to build map based capabilities into your
own applications. This allows you to, amongst other
things, display scrollable maps for any location, display
the map corresponding to the current geographical
location of the device and annotate the map in a
variety of ways.
8. 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 accompanied
by an audio alert and vibration of the device. This
feature should be used sparingly to avoid annoying the
user with frequent interruptions.
9. Message UI Framework
(MessageUI.framework)
• The Message UI framework provides everything you
need to allow users to compose and send email
messages from within your 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 your application
and then displayed for the user to edit and approve
prior to sending.
•
10. Address Book UI Framework
(AddressUI.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.
11. Game Kit Framework
(GameKit.framework)
• The Game Kit framework provides peer-to-
peer connectivity and voice communication
between multiple devices and users allowing
those running the same app to interact. When
this feature was first introduced it was
anticipated by 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.
12. iAd Framework (iAd.framework)
• The purpose of the iAd Framework is to allow
developers to include banner advertising
within their applications. All advertisements
are served by Apple’s own ad service.
• .
13. Event Kit UI Framework
• The Event Kit UI framework was introduced in
iOS 4 and is provided to allow the calendar
events to be accessed and edited from within
an application
14. The iPhone iOS 4 Media Layer
• The role of the Media layer is to provide iOS
with audio, video, animation and graphics
capabilities. As with the other layers
comprising the iOS stack, the Media layer
comprises a number of frameworks that may
be utilized when developing iPhone apps. In
this section we will look at each one in turn.
15. iOS 4 Graphics and Video Support
• Core Video Framework (CoreVideo.framework)
• A new framework introduced with iOS 4 to provide buffering support for the Core
Media framework. Whilst this may be utilized by application developers it is
typically not necessary to use this framework.
• Core Text Framework (CoreText.framework)
• The iOS Core Text framework is a C-based API designed to ease the handling of
advanced text layout and font rendering requirements.
• Image I/O Framework (ImageIO.framework)
• The Image IO framework, the purpose of which is to facilitate the importing and
exporting of image data and image metadata, was introduced in iOS 4. The
framework supports a wide range of image formats including PNG, JPEG, TIFF and
GIF.
• Assets Library Framework (AssetsLibrary.framework)
• The Assets Library provides a mechanism for locating and retrieving video and
photo files located on the iPhone device. In addition to accessing existing images
and videos, this framework also allows new photos and videos to be saved to the
standard device photo album.
16. • Core Graphics Framework (CoreGraphics.framework)
• The iOS 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. Those familiar with the
Quartz 2D API running on MacOS X will be pleased to learn that the implementation of this API is
the same on iOS.
• Quartz Core Framework (QuartzCore.framework)
• The purpose of the Quartz Core framework is to provide animation capabilities on the iPhone. It
provides the foundation for the majority of the visual effects and animation used by
the UIKit framework and provides an Objective-C based programming interface for creation of
specialized animation within iPhone apps.
• OpenGL ES framework (OpenGLES.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.
• OpenGL for Embedded Systems (ES) is a lightweight version of the full OpenGL specification
designed specifically for smaller devices such as the iPhone.
• iOS 3 or later supports both OpenGL ES 1.1 and 2.0 on certain iPhone models (such as the iPhone
17. iOS Audio Support
•
• iOS 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 through the support provided by the
following frameworks.
• AV Foundation framework (AVFoundation.framework)
• An Objective-C based framework designed to allow the playback, recording and management of audio
content.
• Core Audio Frameworks (CoreAudio.framework, AudioToolbox.framework and AudioUnit.framework)
• The frameworks that comprise Core Audio for iOS define supported audio types, playback and recording of
audio files and streams and also provide access to the device’s built-in audio processing units.
• Open Audio Library (OpenAL)
• 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.
• Media Player framework (MediaPlayer.framework)
• The iOS 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 Midi Framework (CoreMIDI.framework)
• Introduced in iOS 4, the Core MIDI framework provides an API for applications to interact with MIDI
compliant devices such as synthesizers and keyboards via the iPhone’s dock connector.
18. The iPhone iOS 4 Core Services Layer
• The iOS 4 Core Services layer provides much of the foundation on which the
previously referenced layers are built and consists of the following frameworks.
• Address Book framework (AddressBook.framework)
• The Address Book framework provides programmatic access to the iPhone Address
Book contact database allowing applications to retrieve and modify contact
entries.
• CFNetwork Framework (CFNetwork.framework)
• The CFNetwork framework provides a C-based interface to the TCP/IP networking
protocol stack and low level access to BSD sockets. This enables application code
to be written that works with HTTP, FTP and Domain Name servers and to establish
secure and encrypted connections using Secure Sockets Layer (SSL) or Transport
Layer Security (TLS).
• Core Data Framework (CoreData.framework)
• This framework is provided to ease the creation of data modeling and storage in
Model-View-Controller (MVC) based applications. Use of the Core Data framework
significantly reduces the amount of code that needs to be written to perform
common tasks when working with structured data in an application.
19. • Core Foundation Framework (CoreFoundation.framework)
• The Core Foundation is a C-based Framework that provides basic functionality such as data types,
string manipulation, raw block data management, URL manipulation, threads and run loops, date
and times, basic XML manipulation and port and socket communication. Additional XML
capabilities beyond those included with this framework are provided via the libXML2 library.
Though this is a C-based interface, most of the capabilities of the Core Foundation framework are
also available with Objective-C wrappers via the Foundation Framework.
• Core Media Framework (CoreMedia.framework)
• The Core Media framework is the lower level foundation upon which the AV Foundation layer is
built. Whilst most audio and video tasks can, and indeed should, be performed using the higher
level AV Foundation framework, access is also provided for situations where lower level control is
required by the iOS application developer.
• Core Telephony Framework (CoreTelephony.framework)
• The iOS Core Telephony framework is provided to allow applications to interrogate the device for
information about the current cell phone service provider and to receive notification of telephony
related events.
• EventKit Framework (EventKit.framework)
• An API designed to provide applications with access to the calendar and alarms on the device.
20. • Foundation Framework (Foundation.framework)
• The Foundation framework is the standard Objective-C framework that will be familiar to those that
have programmed in Objective-C on other platforms (most likely Mac OS X). Essentially, this
consists of Objective-C wrappers around much of the C-based Core Foundation Framework.
• Core Location Framework (CoreLocation.framework)
• The Core Location framework allows you to obtain the current geographical location of the device
(latitude and longitude) and compass readings from with your own applications. The method used
by the device to provide coordinates will depend on the data available at the time the information
is requested and the hardware support provided by the particular iPhone model on which the app
is running (GPS and compass are only featured on recent models). This will either be based on GPS
readings, Wi-Fi network data or cell tower triangulation (or some combination of the three).
• Mobile Core Services Framework (MobileCoreServices.framework)
• The iOS Mobile Core Services framework provides the foundation for Apple’s Uniform Type
Identifiers (UTI) mechanism, a system for specifying and identifying data types. A vast range of
predefined identifiers have been defined by Apple including such diverse data types as text, RTF,
HTML, JavaScript, PowerPoint .ppt files, PhotoShop images and MP3 files.
21. • Store Kit Framework (StoreKit.framework)
• The purpose of the Store Kit framework is to facilitate commerce transactions between your application and the
Apple App Store. Prior to version 3.0 of iOS, it was only possible to charge a customer for an app at the point that
they purchased it from the App Store. iOS 3.0 introduced the concept of the “in app purchase” whereby the user
can be given the option make additional payments from within the application. This might, for example, involve
implementing a subscription model for an application, purchasing additional functionality or even buying a faster
car for you to drive in a racing game.
• SQLite library
• Allows for a lightweight, SQL based database to be created and manipulated from within your iPhone application.
• System Configuration Framework (SystemConfiguration.framework)
• The System Configuration framework allows applications to access the network configuration settings of the
device to establish information about the “reachability” of the device (for example whether Wi-Fi or cell
connectivity is active and whether and how traffic can be routed to a server).
• Quick Look Framework (QuickLook.framework)
• One of the many new additions included in iOS 4, the Quick Look framework provides a useful mechanism for
displaying previews of the contents of files types loaded onto the device (typically via an internet or network
connection) for which the application does not already provide support. File format types supported by this
framework include iWork, Microsoft Office document, Rich Text Format, Adobe PDF, Image files, public.text files
and comma separated (CSV).
•
22. The iPhone iOS 4 Core OS Layer
• The Core OS Layer occupies the bottom
position of the iOS stack and, as such, 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.
23. • Accelerate Framework (Accelerate.framework)
• Introduced with iOS 4, the Accelerate Framework provides a
hardware optimized C-based API for performing complex and large
number math, vector, digital signal processing (DSP) and image
processing tasks and calculations.
• External Accessory framework (ExternalAccessory.framework)
• Provides the ability to interrogate and communicate with external
accessories connected physically to the iPhone via the 30-pin dock
connector or wirelessly via Bluetooth.
• Security Framework (Security.framework)
• The iOS Security framework provides all the security interfaces you
would expect to find on a device that can connect to external
networks including certificates, public and private keys, trust
policies, keychains, encryption, digests and Hash-based Message
Authentication Code (HMAC).
24. • System (LibSystem)
• As we have previously mentioned, the iOS 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 iOS 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.
• As an app developer your access to the System interfaces is restricted for
security and stability reasons. Those interfaces that are available to you
are contained in a C-based library called LibSystem. As with all other layers
of the iOS stack, these interfaces should be used only when you are
absolutely certain there is no way to achieve the same objective using a
framework located in a higher iOS layer.