SlideShare a Scribd company logo
iPhone Programming Speaker Shashank Garg
What is iPhone Smart Phone by Apple. Why is iPhone an iPhone, not just Phone ?????? Built in Accelerometer GPS or Position Triangulation  Multi Touch Interface Keyboard Safari Mail Calendar Wide Screen Display I think biggest in the market
What do u need to Program for iPhone Intel-based Macintosh running Leopard(OS X 10.5.3 or later).
iPhone Development Development done with the help of iPhone SDK Uses Objective-C IDE XCODE Only push your application through App Store 99 $ membership Review of your application Code also 70 % and 30 % share.
iPhone SDK iPhone Sdk have five powerful tools to do iPhone programming. XCODE Professional text editor Debugger GCC compiler Interface Builder For creating user interface Instruments For optimizing application Dash Code For creating web applications for Safari iPhone Simulator
Things to consider before programming Low resources 128 mb Ram Limited Battery life Application should take less execution time. Single Window Multi Touch Events
iPhone OS overview and Technologies iPhone Os can be viewed as set of layers
Cocoa Touch Layer The  Cocoa Touch layer   comprises  UIKit.framework  and  Foundation.framework iPhone OS uses this layer to implement features: Application management Event-handling support User interface management Support for text and web content Accelerometer data The built-in camera
Media Layer Graphics Technologies OpenGLES.framework  (OpenGL),  QuartzCore.framework  (Core Animation) Core Audio CoreAudio.framework , AudioToolbox.framework, AudioUnit.framework (playback and recording, audio processing). Video Technologies iPhone OS provides support for full-screen video playback through the  Media Player framework  ( MediaPlayer.framework )
Core Services The Core Services layer provides the fundamental system services that all applications use Address Book AddressBook.framework : provides access to the contacts stored on a user’s device Core Location CoreLocation.framework : lets you determine the current latitude and longitude of a device CFNetwork CFNetwork.framework : Provides communication with FTP and HTTP servers SQLite The SQLite library lets you embed a lightweight SQL database into your application
Core OS The Core OS layer encompasses the kernel environment, drivers, and basic interfaces of the operating system iPhone OS provides a set of interfaces for accessing many low-level features of the operating system. Your application accesses these features through the LibSystem library. The interfaces are C-based and provide support for the following: Threading (POSIX threads) Networking (BSD sockets) File-system access Standard I/O Memory allocation
iPhone Hardware and Software features that can be incorporated in applications Accelerometer iPhone and iPod touch have 3 accelerometers to measure changes along each of the primary axes in three-dimensional space, which allows you to detect motion in any direction Applications that want to access the accelerometer data directly can also do so using UIKit
iPhone Hardware and Software features that can be incorporated in applications Core Location The Core Location framework monitors signals coming from cell phone towers and Wi-Fi hotspots and uses them to triangulate the user’s current position Use this framework judiciously to not drain the user’s battery
iPhone Hardware and Software features that can be incorporated in applications Contacts You can access the user’s contact information using the Address Book UI framework
iPhone Hardware and Software features that can be incorporated in applications The Camera and Photo Library iPhone has an inbuilt camera as well as a centralized photo library whereas iPod Touch doesn’t have a camera iPhone OS provides access to both of these features through classes in the UIKit framework
Styles of Programming for iPhone iPhone OS defines three basic styles for applications: Productivity style Utility style Immersive style
Productive Style Productivity Applications The focus is on the organization and manipulation of detailed information Typically rely on system views and controls (text fields, labels, and other data-oriented views) for their presentation and do little or no custom drawing Example: The Settings application
Utility Style  Utility Applications Perform a targeted task that requires relatively little user input A quick summary of information or a simple task on a small number of objects Examples: Weather and Stocks applications
Immersive Application Immersive Applications Offer a full-screen, visually rich environment that’s focused on the content and the user’s experience with that content Commonly used for implementing games and multimedia-centric applications Example: Media Player application
Our Project GeoXray LocateMe Feature. Search POI’s around Current Location. Fetch Relevant  News Articles
GeoXray Used UIWebkit to display map. Frameworks:  UIKit Json CoreLocation MapKit  Foundation
GeoXray On iPhone Side Connect iPhone to the Geosemble Server. Retrieve the Data in JSON format. Parse the data and populate the map view and the Table Views.
Challenges Objective C, if you are a pure Java programmer  One time, only one application is executable.  -State Saving(NSArchiver). Memory leaks -  Use Application tool to Fix Memory Leaks. -  Use instruments with the code running on the device to  See how much memory is being used.
Questions?
Thanks   Name: Shashank Garg   Email : shashang@usc.edu

More Related Content

PDF
Apple WWDC Mobility Review 2014
PDF
I phone programming project report
PDF
Why Streethawk re-wrote ibeacon handling on Android
PPTX
Android Application on Location sharing and message sender
PPTX
Apple iOS
DOCX
Location Tracking of Android Device Based on SMS.
ODP
Developing for Mobile with Adobe AIR
PPT
Ticket To Ride from Elevate UK
Apple WWDC Mobility Review 2014
I phone programming project report
Why Streethawk re-wrote ibeacon handling on Android
Android Application on Location sharing and message sender
Apple iOS
Location Tracking of Android Device Based on SMS.
Developing for Mobile with Adobe AIR
Ticket To Ride from Elevate UK

What's hot (20)

PPTX
Screen sharing between android devices
PPTX
JavaScript Frameworks For Mobile App Development | Redbytes
PPTX
1 location tracking of android device based on sms
PDF
Apple iOS Report
PPT
Colors explanation
PDF
Isha_chaoji_3_plus_iOS
PPTX
ppt on android vs iOS
PPTX
Which mobile os should you choose while building
PPTX
Best Presentation on AiOne Call Blocker Android Application as Summer Trainin...
PDF
What To Choose Between - Native App And Hybrid Mobile App
PDF
Android Workshop Presentation
PPTX
Lissa presentation --android
DOC
Karthi resume
PPT
PPTX
How to Get Started in ML?
PDF
iOS 15 Is Upon Us: What New Can Apple Lovers Expect in iOS 15 Features?
PDF
Aj31253258
PDF
Dashboard Simulator
PPTX
MobileApplicationTesting.pptx
PPTX
Android M: Top Features That You Need To Know
Screen sharing between android devices
JavaScript Frameworks For Mobile App Development | Redbytes
1 location tracking of android device based on sms
Apple iOS Report
Colors explanation
Isha_chaoji_3_plus_iOS
ppt on android vs iOS
Which mobile os should you choose while building
Best Presentation on AiOne Call Blocker Android Application as Summer Trainin...
What To Choose Between - Native App And Hybrid Mobile App
Android Workshop Presentation
Lissa presentation --android
Karthi resume
How to Get Started in ML?
iOS 15 Is Upon Us: What New Can Apple Lovers Expect in iOS 15 Features?
Aj31253258
Dashboard Simulator
MobileApplicationTesting.pptx
Android M: Top Features That You Need To Know
Ad

Similar to iPhone Programming (20)

PPTX
Layer architecture of ios (1)
PPT
Android overview
PPTX
architecture of android.pptx
PPTX
Android architecture
PPTX
PPTX
Building Windows8 Metro Applications
PPT
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
PPTX
Windows 7 For Developers
PDF
First Steps with Android - An Exciting Introduction
PPT
ios basics
PPT
iPhone Sdk Winter Conference
PDF
iOS-iPhone documentation
PPTX
Mobile application development
PDF
An introduction to Titanium
PPT
Android presentation
PPT
Mobile Devolpment Slides
PPTX
Windows Phone 7 Applications with Silverlight
PDF
Mobile Application Development
PDF
B feigin mobileapplicationdevelopment
PPT
iphone presentation
Layer architecture of ios (1)
Android overview
architecture of android.pptx
Android architecture
Building Windows8 Metro Applications
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Windows 7 For Developers
First Steps with Android - An Exciting Introduction
ios basics
iPhone Sdk Winter Conference
iOS-iPhone documentation
Mobile application development
An introduction to Titanium
Android presentation
Mobile Devolpment Slides
Windows Phone 7 Applications with Silverlight
Mobile Application Development
B feigin mobileapplicationdevelopment
iphone presentation
Ad

iPhone Programming

  • 2. What is iPhone Smart Phone by Apple. Why is iPhone an iPhone, not just Phone ?????? Built in Accelerometer GPS or Position Triangulation Multi Touch Interface Keyboard Safari Mail Calendar Wide Screen Display I think biggest in the market
  • 3. What do u need to Program for iPhone Intel-based Macintosh running Leopard(OS X 10.5.3 or later).
  • 4. iPhone Development Development done with the help of iPhone SDK Uses Objective-C IDE XCODE Only push your application through App Store 99 $ membership Review of your application Code also 70 % and 30 % share.
  • 5. iPhone SDK iPhone Sdk have five powerful tools to do iPhone programming. XCODE Professional text editor Debugger GCC compiler Interface Builder For creating user interface Instruments For optimizing application Dash Code For creating web applications for Safari iPhone Simulator
  • 6. Things to consider before programming Low resources 128 mb Ram Limited Battery life Application should take less execution time. Single Window Multi Touch Events
  • 7. iPhone OS overview and Technologies iPhone Os can be viewed as set of layers
  • 8. Cocoa Touch Layer The Cocoa Touch layer comprises UIKit.framework and Foundation.framework iPhone OS uses this layer to implement features: Application management Event-handling support User interface management Support for text and web content Accelerometer data The built-in camera
  • 9. Media Layer Graphics Technologies OpenGLES.framework (OpenGL), QuartzCore.framework (Core Animation) Core Audio CoreAudio.framework , AudioToolbox.framework, AudioUnit.framework (playback and recording, audio processing). Video Technologies iPhone OS provides support for full-screen video playback through the Media Player framework ( MediaPlayer.framework )
  • 10. Core Services The Core Services layer provides the fundamental system services that all applications use Address Book AddressBook.framework : provides access to the contacts stored on a user’s device Core Location CoreLocation.framework : lets you determine the current latitude and longitude of a device CFNetwork CFNetwork.framework : Provides communication with FTP and HTTP servers SQLite The SQLite library lets you embed a lightweight SQL database into your application
  • 11. Core OS The Core OS layer encompasses the kernel environment, drivers, and basic interfaces of the operating system iPhone OS provides a set of interfaces for accessing many low-level features of the operating system. Your application accesses these features through the LibSystem library. The interfaces are C-based and provide support for the following: Threading (POSIX threads) Networking (BSD sockets) File-system access Standard I/O Memory allocation
  • 12. iPhone Hardware and Software features that can be incorporated in applications Accelerometer iPhone and iPod touch have 3 accelerometers to measure changes along each of the primary axes in three-dimensional space, which allows you to detect motion in any direction Applications that want to access the accelerometer data directly can also do so using UIKit
  • 13. iPhone Hardware and Software features that can be incorporated in applications Core Location The Core Location framework monitors signals coming from cell phone towers and Wi-Fi hotspots and uses them to triangulate the user’s current position Use this framework judiciously to not drain the user’s battery
  • 14. iPhone Hardware and Software features that can be incorporated in applications Contacts You can access the user’s contact information using the Address Book UI framework
  • 15. iPhone Hardware and Software features that can be incorporated in applications The Camera and Photo Library iPhone has an inbuilt camera as well as a centralized photo library whereas iPod Touch doesn’t have a camera iPhone OS provides access to both of these features through classes in the UIKit framework
  • 16. Styles of Programming for iPhone iPhone OS defines three basic styles for applications: Productivity style Utility style Immersive style
  • 17. Productive Style Productivity Applications The focus is on the organization and manipulation of detailed information Typically rely on system views and controls (text fields, labels, and other data-oriented views) for their presentation and do little or no custom drawing Example: The Settings application
  • 18. Utility Style Utility Applications Perform a targeted task that requires relatively little user input A quick summary of information or a simple task on a small number of objects Examples: Weather and Stocks applications
  • 19. Immersive Application Immersive Applications Offer a full-screen, visually rich environment that’s focused on the content and the user’s experience with that content Commonly used for implementing games and multimedia-centric applications Example: Media Player application
  • 20. Our Project GeoXray LocateMe Feature. Search POI’s around Current Location. Fetch Relevant News Articles
  • 21. GeoXray Used UIWebkit to display map. Frameworks: UIKit Json CoreLocation MapKit Foundation
  • 22. GeoXray On iPhone Side Connect iPhone to the Geosemble Server. Retrieve the Data in JSON format. Parse the data and populate the map view and the Table Views.
  • 23. Challenges Objective C, if you are a pure Java programmer One time, only one application is executable. -State Saving(NSArchiver). Memory leaks - Use Application tool to Fix Memory Leaks. - Use instruments with the code running on the device to See how much memory is being used.
  • 25. Thanks Name: Shashank Garg Email : shashang@usc.edu