Reveal Integration Guide
To inspect your iOS or tvOS application or app extension with Reveal you must first link it with the Reveal Server framework.
We support a variety of integration approaches:
- Using CocoaPods is the simplest method to integrate Reveal Server into your targets running on device and in the Simulators. It also works for all members of your team.
- Loading the Reveal Server via an Xcode Breakpoint allows you to quickly integrate Reveal Server into your Simulator builds without changing anything in your project, or on device after a small change to your project.
- Linking the Reveal Server framework into your application has the same outcome as our CocoaPods integration, but doesn't depend on CocoaPods.
- If you're building iOS App Extensions, we provide additional instructions as there are a couple of minor differences in the integration process for App Extensions.
Minimum Requirements
Reveal requires macOS 11+, iOS 11.4+ or tvOS 10.2+ and Xcode 13.
Updating from Reveal 26 and earlier
In Reveal 27, we started shipping RevealServer as an XCFramework.
If you were previously using breakpoint integration, this change should be seamless.
For CocoaPods users, you will need to run pod update Reveal-SDK
to ensure that you're integrating the version of RevealServer that matches your application version.
If you're linking RevealServer into your application, please follow the instructions to remove Reveal from your project. Once that's done, you can follow the updated instructions to link the Reveal Server framework into your application.
Updating from Reveal 1.x
The names and paths of the bundled frameworks changed in Reveal 2.
If you're using CocoaPods, please ensure your Podfile looks similar to our recommendations, and then run pod install
to remove the old framework and integrate the new one.
If you're using one of the other integration methods, updating from Reveal 1.6.x should be a simple process of removing any references to libReveal.dylib
or Reveal.framework
from your projects, and then following the instructions for linking the framework or dynamically loading the framework that are linked above.
Further Information
We provide further information on a number of topics in our online Knowledge Base.
Important Information
- Never ship an app linked against the Reveal library. Reveal exposes your app to deep inspection and will likely cause your app to be rejected by the Apple review team. Reveal is intended for internal development and debugging purposes only.
- The Reveal service will stop automatically while the iOS or tvOS host app is not the frontmost app. It will automatically start again when the app is re-opened.
- Reveal supports inspection of applications compiled against iOS 10.3 and later and tvOS 10.2 or later. The iOS Deployment Target build setting must also be 'iOS 10.3' or later in iOS projects. You may see link errors if this is not the case.
- Reveal can use Bonjour to connect with the running iOS or tvOS application. If you are running the iOS or tvOS application on a device and wish to connect using Bonjour, it will need to be on the same network as the Reveal Mac app to be able to connect with it. If you have any problems connecting to your application check your firewall and proxy settings to ensure they are not blocking communications or just connect your device to your Mac using its lightning cable.