Some test text!

Search
Hamburger Icon

iOS / Guides / 1. Integrate

Get started integrating Apryse iOS SDK

Welcome to Apryse. This guide will help you integrate a free trial of the Apryse iOS SDK into your Xcode projects for iOS applications. You can either integrate Apryse frameworks automatically using Swift Package Manager, CocoaPods, or install them manually by downloading the SDK. Pick whichever your option you prefer, but integrating with Swift Package Manager is the recommended approach. Your free trial includes unlimited trial usage and support from solution engineers.

CocoaPods Integration for iOS

Prerequisites

No trial license key required.
The trial of Apryse SDK does not require a trial key. A commercial license key is required for use in a production environment. Please fill out our contact form if you do not have a valid license key.
Keep your license keys confidential.
License keys are uniquely generated. Please make sure that it is not publicly available (e.g. in your public GitHub).

Integrating Apryse SDK for your iOS application

Framework format
The default CocoaPods integration uses .xcframeworks. If you wish to use the older .framework format, you can remove the xcframeworks path component from the podspec URLs throughout this guide.

This guide will use the latest versions of PDFNet.xcframework and Tools.xcframework. To do this, modify your PodFile to include the PDFTron and PDFTronTools pods:

pod 'PDFTron', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron/latest.podspec'
pod 'PDFTronTools', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron-tools/latest.podspec'

Then run pod install in your project directory. You should be able to use the PDFNet and Tools libraries after this process.

You can find out more about other integration options for Apryse SDK with CocoaPods.

Add Required Permissions

Apryse uses a select number AppStore permissions to allow certain functionality such as adding image stamps and detecting the Apple Pencil. Your app's plist must include the following keys (with whatever description is appropriate for your app), or it will be rejected from the AppStore.

<key>NSCameraUsageDescription</key>
<string>This will allow you to use the image from your camera.</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>This will allow you to add images to your photo library.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>This will allow you to create signatures and annotations from images in your photo library.</string>
<key>NSBluetoothAlwaysUsageDescription</key>
<string>This will allow us to detect if an Apple Pencil is paired, enabling palm rejection and the ability to scroll with one finger while annotating.</string>
<key>NSBluetoothPeripheralUsageDescription</key>
<string>This will allow us detect if an Apple Pencil is paired, enabling palm rejection and the ability to scroll with one finger while annotating.</string>

Initialize Apryse

Initialize Apryse before you use any Apryse related classes or methods. This only needs to be done once.

The best practice to do this is to use the optional application:willFinishLaunchingWithOptions: method in the AppDelegate class found in either the AppDelegate.swift or AppDelegate.m file in the left pane depending on your choice of language:

// In AppDelegate.swift
import UIKit
import PDFNet
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    var window: UIWindow?
    //... Any methods already here
    func application(_ application: UIApplication, willFinishLaunchingWithOptions launchOptions:[UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        PTPDFNet.initialize("Insert Commercial License Key Here After Purchase")
        return true
    }
}

While you are trialing Apryse, you can pass any string to the initialize method. A string that is not a license key will enable demo mode, where all pages are lightly watermarked.

You can now use Apryse SDK to view, annotate and edit documents .

More Integration Options

You have several options for adding the Apryse iOS SDK to your project with CocoaPods. The standard way to install the SDK, which is used above in this guide, is to use the latest official release version. It is also possible to "pin" the Apryse pods to a specific version of the SDK using the full version number of the release. The following subsections outline these different options.

The PDFNet.xcframework and Tools.xcframework libraries are distributed as separate pods.

Latest

For the latest official release version of the PDFNet.xcframework and Tools.xcframework libraries, add the following to your Podfile:

pod 'PDFTron', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron/latest.podspec'
pod 'PDFTronTools', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron-tools/latest.podspec'

Then, run pod install.

When a new official version of the SDK is released, you can easily update the Apryse pods with the pod update command without having to modify your Podfile.

Specific

For a specific release of the PDFNet.xcframework and Tools.xcframework libraries, add the following to your Podfile:

pod 'PDFTron', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron/10.12.0.84387.podspec'
pod 'PDFTronTools', podspec: 'https://www.pdftron.com/downloads/ios/cocoapods/xcframeworks/pdftron-tools/10.12.0.84387.podspec'

Legacy

The legacy "pdfnet" and "pdfnet-no-tools" pods are no longer recommended for new projects due to incompatibilities with specific setups. These pods are deprecated and while they are still made available for new releases of the SDK, migrating to the new "pdftron" and "pdftron-tools" pods should be done when possible.

Then, run pod install.

Note: CocoaPods distributes the dynamic frameworks only. If you wish to use the static frameworks, you will have to integrate it manually.

Next step

View a document

Trial setup questions? Ask experts on Discord
Need other help? Contact Support
Pricing or product questions? Contact Sales