Deploying and Testing Your App on a Real iOS Device
If we want users to like our software, we should design it to behave like a likable person: respectful, generous and helpful.
- Alan Cooper
Up till now, you have been running and testing your app on the built-in simulator. The simulator is a great companion for app development especially if you do not own an iPhone. While the simulator is good, you can never rely completely on the simulator. It's not recommended to submit your app to App Store without testing it on a real device. Chances are there are some bugs that only show up when your app runs on a physical iPhone or over the cellular network. If you're serious about building a great app, this is a must to test your app on a real device before releasing it to your users.
One great news, especially for aspiring iOS developers, is that Apple no longer requires you to enroll in the Apple Developer Program before you can test your app on an iOS device. You can simply sign in Xcode with your Apple ID, and your app is ready to run on your iPhone or iPad. However, please note that if your app makes use of the services like CloudKit and Push Notifications, you still need to enroll in the Apple Developer Program, which costs $99 per year. I know, for some, this is a significant amount of money for some of you. But if you read the book from the very beginning and are still with me, I believe you have demonstrated a strong determination to build an app and deploy it to your audience. It's not easy to make it this far! So why stop here? If you're not on a tight budget, I highly recommend you enroll in the program so that you can continue to learn the rest of the materials and most importantly, submit your app to App Store.
To test an app on a physical device, you will need to perform a few configurations:
- Request your development certificate
- Create an App ID for your app
- Configure your device for development
- Create a provisioning profile for your app
In the old days of iOS development, you had to manage the above configurations all on your own through the iOS Provisioning Portal (or Member Center). The modern version of Xcode automates the whole signing and configuration processes by using a feature called Automatic Signing. This makes your life a lot easier. You will see what I mean shortly.
To access the full version of the book, please get the full copy here. You will also be able to access the full source code of the project.