Advanced CocoaPods Integration

This guide assumes you have read the Getting Started guide for the CocoaPods integration.

Additional Podspec Options:

use_frameworks!

target :YourTargetName do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/latest.podspec'
end

Pinning to a Specific Version (e.g. 10.3.0):

use_frameworks!

target :YourTargetName do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/10.3.0.podspec'
end

Use Nightly Builds

If you have an active license subscription, we can enable access to nightlies on CocoaPods. Once that is done, replace latest.podspec with nightly.podspec to point to the latest nightly build.

use_frameworks!

target :YourTargetName do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/nightly.podspec'
end

Use a JSON Podspec

CocoaPods makes a checksum of the JSON representation of your Podspec and keeps it in your Podfile.lock file. If your development environment requires you to use a JSON Podspec, you can append .json to your CocoaPods URL, like so:

use_frameworks!

target :YourTargetName do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/latest.podspec.json'
end

To learn more about Podspec checksums, please take a look at the Why does my team’s Podfile.lock Podspec checksums change? blog post.

Use Fat Frameworks Instead of XCFrameworks

We offer XCFrameworks as the default CocoaPods artifacts. If your project environment requires you to use old fat .framework files instead, you can append -framework to the version number of your CocoaPods URL, like so:

use_frameworks!

target :YourTargetName do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/latest-framework.podspec'
end

Integrating PSPDFKit Into Test Targets

You can add PSPDFKit to your test targets like this:

target :YourTargetNameTests do
  pod 'PSPDFKit', podspec: 'https://customers.pspdfkit.com/pspdfkit-ios/latest.podspec'
end

You can also use CocoaPods inheritance mode to inherit all of your main target’s dependencies by using inherit! :complete, like so:

target :YourTargetNameTests do
  inherit! :complete
end