
Download Project files here
Explore remote data access in iOS by fetching data from web services using JSON. Learn to perform asynchronous calls to keep the UI responsive across mobile and web.
Parse local json data by loading places.json, convert dictionaries to place objects with title city latitude and longitude, and display them in a table view.
Access remote weather data by building a url to the Weather Underground API, parse json into objects, and update temperature and conditions from the current observation.
Learn to capture and display photos, record and play audio and video, and create a photo gallery using a collection view while querying the device media library.
Create an image gallery by fetching the user's photos and displaying them in a collection view with square cells, using PHAsset and PHImageManager to load images.
Implement an image picker to let users select a photo from the photo library, then use the delegate to display the chosen image.
Use the image picker to access the camera and display the captured image in an image view with aspect fit, noting the simulator lacks a camera.
Take a photo, save it to the photo album, and retrieve it from the photo library to display in the view controller using the image picker.
Learn to play a video in an iOS app by loading an mp4 from the app bundle, using AVKit and AVFoundation to create an AVPlayer and AVPlayerViewController, and present it.
Record video using the camera via the image picker controller, save it to the photo album, and play it back with AVPlayer and AVPlayerViewController.
Learn to play a local audio file with a simple interface, featuring a play button, a stop button, and a volume slider using AVAudioPlayer.
Learn to record audio in an iOS app with AVAudioRecorder, save to a user-named file in the documents directory, and play back using AVAudioPlayer with delegates and button states.
Access the user's media library to list songs in a table view, display titles and artists, play selected tracks with an av player, and update the duration during playback.
Discover geocoding and reverse geocoding to convert addresses to coordinates and vice versa, locate users with GPS, and render maps with iOS maps and MapKit, including directions.
Learn geocoding and reverse geocoding in iOS using CLGeocoder to convert addresses to latitude and longitude and back, handle multiple results, and format international addresses.
Display a map in iOS apps using Core Location, geocoder, and MapKit to convert an address to coordinates, center a map region, and drop a place mark.
Learn to display a map, geocode addresses into place marks, and render driving directions using MKMapItem and MKLaunchOptions. Switch between walking or mass transit and remember maps require internet access.
The lecture demonstrates using the location manager to obtain the current user location, requesting when-in-use authorization, and handling updates to latitude, longitude, altitude, and accuracy through a delegate.
Learn to build an iOS app that calculates the distance from your current location to a target address using location manager and geocoder, converting meters to miles.
Build a simple map app using map kit by geocoding a user-entered address, centering the map on the result, and setting a radius with MKCoordinateRegion.
Choose road or satellite map types and zoom around a geocoded address using a slider, centering the map view and updating with user input.
Display the user's current GPS location on the map, request when-in-use authorization, center the map, provide road or satellite view, adjust zoom, and reverse geocode to show the address.
Explore the motion framework to access the accelerometer, gyroscope, and compass, determine device orientation, direction, and pace, and use gestures or game-style controls in iOS apps.
Explore the iOS motion framework by measuring acceleration and rotation with the accelerometer and gyroscope, using polling and event-driven updates via a motion manager.
Control a blue dot with the accelerometer using Core Motion, turning tilt into game motion and guiding the dot through a maze.
Learn to read gyroscope data in x, y, and z axes with a Core Motion motion manager, set a 0.1 second update interval, and track maximum rotations via event-driven updates.
Learn to build a compass using the magnetometer via Core Location's location manager, calibrate, and rotate an arrow image to point north with heading updates.
Learn how to add social networking to iOS apps by posting to Facebook and Twitter via simple APIs or your own UI, and compare built-in versus custom approaches.
Explore iOS social networking options, from UIActivityViewController to SLComposeViewController, SLRequest, and full SDKs, comparing simplicity and UI control with Facebook and Twitter Open Graph sharing.
Explore how to implement a basic iOS sharing flow with the UIActivityViewController, handling text and optional image with an image picker, and previewing posts for Twitter or Facebook.
Use the SLComposeViewController to post to a specific service like Facebook or Twitter from your app, with an image and preset text.
Post to Twitter directly with SLRequest by selecting a Twitter account and sending a status update. Configure the user interface, request access, and handle responses within the app.
Learn to read the Twitter timeline by requesting Twitter accounts, using SLRequest to fetch 25 posts with include_entities, and display results in a table view.
Post to Facebook using SLRequest by configuring a Facebook app ID, developer account, and bundle ID, requesting read then publish permissions, and sending the message through the Accounts framework.
Create a new iOS app on the Facebook developer portal, install the Facebook SDK, and add Info.plist keys, app transport security, and LSApplicationQueriesSchemes to enable the like button.
Set up the Facebook SDK for an iOS app, use the login button with read and publish permissions, and post a hello world message to the user's wall.
Learn to read a Facebook user profile with the Facebook SDK using a login button, an access token, and a graph request to /me for id, name, and picture.
Learn how CloudKit offers cloud storage with a lightweight remote database, storing objects like customers and orders, with private or public access and simple setup.
Set up iCloud and CloudKit for your app by configuring the bundle identifier, enabling iCloud with CloudKit, creating containers and entitlements, and using the CloudKit dashboard for record types.
Learn how to fetch CloudKit records from the public database and display them in a table view, using a customer object mapped to CloudKit fields.
add a customer record to the CloudKit public database by creating a CKRecord of type customer, setting name, address, city, state, and saving to the default zone.
Explore in-app purchasing options, including disposable content, feature unlocks, and subscriptions, and compare them with eye ads as a simple monetization approach, covering setup and receipt validation.
Explore in-app purchases for iOS apps, including consumables, non-consumables, and subscriptions, with cross-device transfers, downloads, and the purchase flow using SKProduct, SKPaymentQueue, and receipt validation.
Explore how to validate App Store receipts to prevent hacks, comparing in-app validation and server validation, and understand the role of device info, transaction IDs, and purchase dates.
Post the receipt to your server for validation with Apple's service, then verify status, product id, bundle id, and purchase date for sandbox or live mode.
Set up your iOS app with Apple by creating certificates, identifiers, and provisioning profiles, then sign the app in Xcode and configure iTunes Connect for in-app purchases, agreements, and readiness.
Test in-app purchases with the sandbox, using the same validation process but the Apple sandbox URL. Create sandbox testers in iTunes Connect, and use TestFlight users for beta distribution.
Create and configure in-app purchases by selecting type (consumable or non-consumable), setting a unique product ID, choosing pricing tiers, adding localization, and specifying hosting content with Apple and review notes.
Create and upload a hosted content package for an in-app purchase, link it to the product ID, archive it with the application loader, then enable user downloads after purchase.
Enable hosted content through a premium, non-consumable in-app purchase by validating receipts, handling downloads with progress updates, and copying downloaded files to the documents directory (porcupine image included).
Learn how to implement iAds in your iOS app, configure banner ads via iTunes Connect, and manage ad revenue streams and user experience, including in-app purchases to remove ads.
Learn to access remote data via asynchronous web services and JSON, manage iOS media, and leverage maps, motion, social sharing, cloud kit, and in-app purchases.
Celebrate completing the course as you review remote data access, media handling, social integration, location services, device sensors, cloud kit storage, and in‑app purchasing with receipt validation.
One of the downsides (or upsides, depending on your outlook) to Apple and iOS is that it doesn’t play nice with the rest of the programming world. It takes some special knowledge and training to become and Apple developer. If you already have some programming experience, this isn’t a problem. Start with this course and you’ll get a head start on the road to your dream career.
Create native iPhone and iPad Apps using Xcode and Swift
Take the First Steps to Becoming an Apple Developer
If you already have some programming experience and want to take your skills up a notch, or if you want to learn specifically about creating apps for Apple, or even if you just want to get an update on programming for iOS 9, this is the perfect course for you. With 58 lectures and 5.5 hours of content, you can delve right into the world of Swift, Xcode and iOS 9, and come back up for air as a bona fide expert.
This course covers all of the most important and most popular features of iOS 9, including interfacing with remote data services, accessing media and the media library, using GPS to track location, social networking, data access with cloud-kit and in-app purchasing. You’ll cover all of the above and dig right down into the nitty gritty straight away.
By the end of this course, you’ll know how to create native iPhone and iPad apps using Xcode and Swift and can proudly call yourself an intermediate iOS 9 programmer. You’ll know how to implement all of the above features using iOS frameworks, using source code which is provided. At each step you’ll review and analyse the behaviour to help compound your knowledge.
Tools Used