IOS App Development.

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

Objectives Overview Define an operating system
6/13/20151 CS 160: Lecture 13 Professor John Canny Fall 2004.
Chapter 11 Operating Systems
Friday, August 29, 2014 CSCI 351 – Mobile Applications Development.
Process by Dr. Amin Danial Asham. References Operating System Concepts ABRAHAM SILBERSCHATZ, PETER BAER GALVIN, and GREG GAGNE.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
FINAL PRESENTATION SYDNEY TOUR. Divya Nalla Raja Kandasamy RajaShekar Donti Ren Zhu Sadah Omar Sulaiman
Explain the purpose of an operating system
Folio3 IPhone Training Session 1 Presenter: Imam Raza.
Monday, August 31, 2015 CSCI 351 – Mobile Applications Development.
Processes and Process Control 1. Processes and Process Control 2. Definitions of a Process 3. Systems state vs. Process State 4. A 2 State Process Model.
 Steve Jobs- He created Apple Inc..  The invention is the iPhone.
Monday, August 31, 2012 CSCI 333 – Systems Programming.
Lecture on Central Process Unit (CPU)
Chapter 9 Operating Systems Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
OPERATING SYSTEM BY KINSHUK RASTOGI. WHAT IS AN OPERATING SYSTEM? What is an operating system in the first place? An operating system is a software that.
12-Jun-16 Event loops. 2 Programming in prehistoric times Earliest programs were all “batch” processing There was no interaction with the user Input Output.
3 Important Performance tracking tools in an Android Application Development Workflow Here are 3 tools every Android application developer should familiarize.
CHAPTER 7 Operating System Copyright © Cengage Learning. All rights reserved.
DISCOVERING COMPUTERS 2018 Digital Technology, Data, and Devices
Java FX: Scene Builder.
View Controllers In the Model-View-Controller (MVC) design pattern, a controller object provides the custom logic needed to bridge the application’s data.
OPERATING SYSTEM CONCEPT AND PRACTISE
Chapter Objectives In this chapter, you will learn:
Resource Management IB Computer Science.
Processes and threads.
CSCI 351 – Mobile Applications Development
Resource Management IB Computer Science.
Event Loops and GUI Intro2CS – weeks
Operating Systems •The kernel is a program that constitutes the central core of a computer operating system. It has complete control over everything that.
iOS - First Application Anatomy
Event loops 16-Jun-18.
OPERATING SYSTEMS CS3502 Fall 2017
Event Driven Programming Dick Steflik
Introduction to Operating System (OS)
Intro to Processes CSSE 332 Operating Systems
CSCI 351 – Mobile Applications Development
Affordable iPhone Mobile Apps Development Services Company
intro to notifications in iOS 10
Chapter 4: Threads.
OPERATING SYSTEMS Threads
Modified by H. Schulzrinne 02/15/10 Chapter 4: Threads.
Event loops.
Application Development A Tutorial Driven Course
Mid Term review CSC345.
Process Description and Control
COMPUTER PERIPHERALS AND INTERFACES
Explain what touch develop is to your students:
Event loops 17-Jan-19.
Event loops 17-Jan-19.
EE 472 – Embedded Systems Dr. Shwetak Patel.
Process Description and Control
CSC 581: Mobile App Development
Explain what touch develop is to your students:
Explain what touch develop is to your students:
Chapter 3: Processes.
Event loops 8-Apr-19.
05 | Desktop Applications
Development with UIKit on Xamarin.ios
Chapter 2 Processes and Threads 2.1 Processes 2.2 Threads
CSC 581: Mobile App Development
02 | What DirectX Can Do and Creating the Main Game Loop
Process State Model -Compiled by Sheetal for CSIT
Chapter 4: Threads.
Event loops.
Event loops 19-Aug-19.
Chapter 4: Threads.
Chapter 3: Process Management
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

iOS App Development

Overview iOS revealed with the first iPhone by Steve Jobs on January 9th, 2007 Brought multitouch to the masses iOS 2 - Introduced the App Store Currently over 2,000,000 iOS Apps App developers earned $20 billion in 2016

MVC Architecture This pattern separates the app’s data and business logic from the visual presentation of that data. This architecture is crucial to creating apps that can run on different devices with different screen sizes.

MVC Architecture Separates data and business logic from the visual presentation Support devices with different screen sizes. This pattern separates the app’s data and business logic from the visual presentation of that data. This architecture is crucial to creating apps that can run on different devices with different screen sizes.

Main Run Loop An app’s main run loop processes all user-related events. The UIApplication object sets up the main run loop at launch time and uses it to process events and handle updates to view- based interfaces. The main run loop executes on the app’s main thread. This behavior ensures that user-related events are processed serially in the order in which they were received. As the user interacts with a device, events related to those interactions are generated by the system and delivered to the app via a special port set up by UIKit. Events are queued internally by the app and dispatched one-by-one to the main run loop for execution. The UIApplication object is the first object to receive the event and make the decision about what needs to be done. So, a touch event is usually dispatched to the main window object, which in turn dispatches it to the view in which the touch occurred. Other events might take slightly different paths through various app objects.

Main Run Loop The main run loop executes on the app’s main thread. Events are generated by the system. Events are queued and dispatched to the main run loop. The UIApplication object receives the event and makes decisions. An app’s main run loop processes all user-related events. The UIApplication object sets up the main run loop at launch time and uses it to process events and handle updates to view- based interfaces. The main run loop executes on the app’s main thread. This behavior ensures that user-related events are processed serially in the order in which they were received. As the user interacts with a device, events related to those interactions are generated by the system and delivered to the app via a special port set up by UIKit. Events are queued internally by the app and dispatched one-by-one to the main run loop for execution. The UIApplication object is the first object to receive the event and make the decision about what needs to be done. So, a touch event is usually dispatched to the main window object, which in turn dispatches it to the view in which the touch occurred. Other events might take slightly different paths through various app objects.

Main Run Loop Event type Delivered to… Touch The view object in which 
the event occurred Shake motion events First responder object Gyroscope The object you designate Location Redraw The view that needs the update

Execution States The system moves your app from state to state in response to actions happening throughout the system. For example, when the user presses the Home button, a phone call comes in, or any of several other interruptions occurs, the currently running apps change state in response. Apps must be prepared for termination to happen at any time and should not wait to save user data or perform other critical tasks. System-initiated termination is a normal part of an app’s life cycle. The system usually terminates apps so that it can reclaim memory and make room for other apps being launched by the user, but the system may also terminate apps that are misbehaving. Suspended apps receive no notification when they are terminated; the system kills the process and reclaims the corresponding memory. If an app is currently running in the background and not suspended, the system calls the applicationWillTerminate: of its app delegate prior to termination. The system does not call this method when the device reboots

Execution States The system controls the app’s state. Each transition calls a corresponding method that responds to the state change. The system moves your app from state to state in response to actions happening throughout the system. For example, when the user presses the Home button, a phone call comes in, or any of several other interruptions occurs, the currently running apps change state in response. Apps must be prepared for termination to happen at any time and should not wait to save user data or perform other critical tasks. System-initiated termination is a normal part of an app’s life cycle. The system usually terminates apps so that it can reclaim memory and make room for other apps being launched by the user, but the system may also terminate apps that are misbehaving. Suspended apps receive no notification when they are terminated; the system kills the process and reclaims the corresponding memory. If an app is currently running in the background and not suspended, the system calls the applicationWillTerminate: of its app delegate prior to termination. The system does not call this method when the device reboots

Developer Tools You will need: Apple ID with Developer Access Mac with latest Xcode IDE Updated iOS Device Additionally: Unity3D

Apple ID with Developer Access

Go to www.developer.apple.com