This update corrects several errata reported by our readers in version 1.0 and the first print release.
It also changes the URL we use for the web radio example in the first chapter because-
wouldn’t you know it-after 10 years, the music stream we were using had to shut down because of licensing problems. We’ve replaced it with a URL to a National Public Radio station, which we figure should stick around longer. And, of course, you can always just use your own stream URL for that example, as explained in the “Be Your Own DJ” sidebar.
Production is complete. Now it’s on to layout and the printer.
This update finishes out our book with a final chapter on “Publishing and Maintaining the App.” Here you’ll learn how to get set up with Apple’s developer program and prepare an app for submission to the App Store. But before we submit it for review, we’ll run the app through beta testing with the Test-Flight service, which allows us to send pre-release builds to testers of our choosing and collect their feedback. We’ll cover the nitty-gritty of app submission and what to do to keep the app going after it’s released.
We’ve also added a new section to the testing chapter covering “Running and Testing on the Device,” which will free you from the simulator and let you run the app on your own iPhone or iPad. We’ve also fixed many errata in the earlier betas reported by readers. Please keep the errata reports coming in!
Content-complete and moving into production.
Our first update to the beta is a big one: four whole chapters, nearly enough to finish out the book. In “Chapter 13, Handling Touch Gestures,” we look at how iOS matches gestures like taps, pinches, and drags, and delivers them to our app. In “Chapter 14, Viewing and Editing Photos,” we use the Photos framework to access the user’s photo library, and apply the powerful Core Image framework to perform GPU-powered image manipulation. Next, we look at “Chapter 15, Interacting with iOS and Other Apps,” giving other apps a way to call into ours by way of a custom URL scheme, and then offer our own executable code to run inside other apps in the form of app extensions. Finally, we look at “Chapter 16, Fixing the App When It Breaks,” which is all about the debugging tools provided to us by the iOS SDK.
All of these chapters have been reworked to take advantage of Swift 2.0 and new iOS 9 features where possible. In cases where an interesting topic is too advanced for our intended audience, we offer sidebars on new iOS 9 stuff like Universal Links and 3D Touch, so you can seek out those topics when you’re ready.
Initial beta release.