Question

When I build my iPad app for running on my development iPad, it only builds the debug version. I need to see how fast the real release version is; how do I do this? I'm used to Visual Studio's Debug/Release builds, so this Run/Test/Profile/Analyze/Archive stuff isa bit confusing. I see Schemes are related to this but isn't there a simple switch "I want to test Debug/Release version of my app on my device"?

Was it helpful?

Solution

You want to do a release build using an ad-hoc provisioning profile, which will allow you to install it on your device and any others you have specified.

Test flight app is free and can help with this process as well.

Provisioning Profile

OTHER TIPS

In your scheme settings, you can select to build for debug or release. Make sure you have set up code signing correctly. Xcode 5 can help with that.

You can create a new Build Configuration in the Project View under the Xcode Project. Make it a duplicate of Distribution

New configuration

Then just choose Edit Schemes and choose the new scheme and run on your device. Make sure you the certificates selected in your Build Settings. However you don't get full Debugging capabilities when running a AdHoc/ Distribution build.

This took me a really long time, but I got it working. I usually use automatic signing and it works great. I switched to using FastLane in order to speed up the test flight distribution process and it required that I switch to manual signing. I had to change my release signing certificate to iOS Distribution.

I then had a bug that was only reproducible in release mode, so I needed to run the app on my device in release mode, but it was a pain to keep re-uploading to test flight.

I tried changing my build system to legacy, but that didn't work. I read up on profiles and certificates and I realized that I need to use iOS development certificates to run on device directly (which is what I was doing in debug mode). However, I needed to use iOS distribution certificates to distribute the app. Automatic signing had been taking care of this for me.

I ended up just turning on automatic signing briefly to test my app and then turned it back off and used git to revert the status of the workspace.

TLDR: turn on automatic signing and then turn it back off when done testing

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top