With Xcode 7 it is possible to run and test your apps on a real device (not a simulator) without Apple Developer subscription (~$100). It even works with Unreal 4.8.
For a beta period you need the following:
- Current stable version of Xcode to compile your game (get Xcode 6.4 from the Mac App Store)
- Current beta version of Xcode 7 to generate certificates and provisioning
You can get Xcode 7 from Apple here Sign In - Apple (register a free Apple account first)
- Connect an iOS device that you want to use for testing
- Start Xcode 7, create a new iOS project from a template (anything will do)
- Go to Xcode Preferences — Accounts and add your Apple account information
- Close Xcode Preferences, now on the Xcode toolbar set the Active Scheme (near the Stop button) to your app, and set the connected iOS device as a deployment target
- Select the root item in the Project Navigator on the left to open project settings, select your app target, select the General tab
- Change the Bundle Identifier in Xcode to the bundle identifier of your Unreal game (Unreal Project Settings — iOS — Bundle Information — Bundle Identifier)
- Ensure that the Team drop-down is set to your Apple account and click the Fix button under it
- Run the empty app once on the target device
- It will set certificates and provisioning just for this specific bundle identifier and just for the following selected device
- Stop the app, close Xcode and go back to Unreal with your game
Ensure that the bundle identifier was not changed. Run a level from Unreal on the device or build an IPA and install it with iTunes. It will work from now on. You need to repeat these steps once for every new iOS device or Unreal game (with a different bundle identifier).
I hope it will be automated in some future version of Unreal after the Xcode 7 final release.