Integrating Real-Time Collaboration into Your iOS Application
With PSPDFKit Instant, it’s easier than ever to add real-time collaboration features to your PSPDFKit-powered app, allowing your users to seamlessly share, edit, and annotate PDF documents across Android, iOS, and web apps. This article will guide you through integrating Instant into your own apps.
PSPDFKit and Instant require the latest stable version of Xcode available at the time the release was made.
A Document Engine instance and one of our example backends. See the Example Projects guide to get an instance up and running.
PSPDFKit for iOS and Instant. PSPDFKit, PSPDFKitUI, and Instant are separate frameworks. The frameworks can be integrated into your application via Swift Package Manager, CocoaPods, or manually by downloading the latest release from my.pspdfkit.com.
Quick Start with the Example Project
Instant comes with a source-available iOS example project, which connects to either one of our example server apps.
Run Document Engine locally using one of our example projects.
In a web browser, log in to the example app with the same user ID the iOS app uses in
AppDelegate.swift, which by default is
Add a document to the server using the Upload PDF button.
Select the document to view it with PSPDFKit for Web and add some annotations. You can also create a new layer on the same document to switch between different sets of annotations on the same document.
Build and run the
Instant-iOS-Examplescheme on iOS Simulator. After launching, the app should load the list of all documents with all their respective layers from the server.
Tap any layer in the app to download it and show it in an
Add annotations in the iOS app or in the browser to see annotation syncing.
To run on an iOS device instead of the simulator, replace
AppDelegate.swiftwith the hostname or address that the server can be reached at. This is your Mac’s local IP address, which you can see by option-clicking the Wi-Fi icon in the macOS menu bar.
Instant-iOS-Example doesn’t build, make sure you’re using the latest stable version of Xcode; expand the
Frameworks group in the Project Navigator; and check that the
Instant.xcframework frameworks aren’t missing. If the app runs but no documents or layers appear, make sure the
AppDelegate.swift matches the name you entered in the browser when logging in to the example app and that the server and example app are running on your machine.
Integrating the Instant Framework
There are three ways to integrate the Instant framework: with Swift Package Manager, with CocoaPods, and manually. They’re outlined below.
Swift Package Manager
If you’re already using Swift Package Manager, you can add Instant to your project like so:
Integrate the Instant Swift package using the public repository URL.
If you’re already using CocoaPods, you can add PSPDFKit and Instant to your project by adding the following to your
use_frameworks! target :YourTargetName do pod 'PSPDFKit', podspec: 'https://my.pspdfkit.com/pspdfkit-ios/latest.podspec' pod 'Instant', podspec: 'https://my.pspdfkit.com/instant/latest.podspec' end
To integrate manually:
Instant.xcframeworkinto the Frameworks, Libraries, and Embedded Content section of your target.