Chapter 26
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 until now, you have been running and testing your app on the built-in simulator. The simulator is a valuable tool for app development, especially if you don't own an iPhone. While the simulator is useful, it's essential not to rely solely on it. It is not recommended to submit your app to the App Store without testing it on a real device. There may be bugs that only manifest when your app runs on a physical iPhone or operates over a cellular network. If you are serious about creating a great app, it is imperative to test it on a real device before releasing it to your users.
One exciting piece of news, particularly for aspiring iOS developers, is that Apple no longer requires you to enroll in the Apple Developer Program to test your app on an iOS device. You can simply sign in to Xcode with your Apple ID, and your app will be ready to run on your iPhone or iPad. However, please note that if your app utilizes services like CloudKit and Push Notifications, you still need to enroll in the Apple Developer Program, which costs $99 per year. I understand that this may be a significant amount of money for some of you. Nevertheless, if you have been following the book from the beginning and are still here with me, I believe you have demonstrated a strong determination to build and deploy an app to your audience. It's not easy to make it this far! So why stop now? If you're not on a tight budget, I highly recommend enrolling in the program so that you can continue learning the remaining materials and, most importantly, submit your app to the 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.