Add license key

This guide demonstrates how to initialize PDFNet with a license key. To begin working with PDFNet, you must have first added it to your project.

  1. Import PDFNet.If you have not already done so, import PDFNet to make it accessible.Importing PDFNet. The equivalent in Objective-C is #import.
Apryse Docs Image
  1. PDFNet must be initialized before any other PDFNet API calls are made. This only needs to be done once. If you have a commercial license key, it must be passed in to the initialize method. (An invalid key will result in the library running in demo mode.) Initializing PDFNet is done as shown:

No trial license key required.

The trial of Apryse Mobile SDK does not require a trial key. A commercial license key is required for use in a production environment. Please contact sales to purchase a commercial key or if you need any other license key assistance.

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).

Initializing PDFNet in a Swift project that uses storyboards

The app lifecycle in a Swift project that uses storyboards is different than other iOS projects, they require careful handling to ensure PDFNet is initialized before its classes are used.

In Swift projects that use storyboards, non-optional stored properties that are instantiated at the point of declaration are instantiated before most code has a chance to run, including application(_:willFinishLaunchingWithOptions:). This means that even if you initialize PDFNet with a license key in this method, which is "your app’s first chance to execute code at launch time", it will result in an error.

To initialize PDFNet beforeapplication(_:willFinishLaunchingWithOptions:), add a new property in AppDelegate.swift that is initialized with the result of a call to PDFNet's initialize method (which is void):

Swift

1@UIApplicationMain
2class AppDelegate: UIResponder, UIApplicationDelegate {
3
4 var window: UIWindow?
5
6 private let pdfnetInitialize = PTPDFNet.initialize("Insert commercial license key here after purchase")
7
8 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
9 // Override point for customization after application launch.
10 return true
11 }

Alternatively, non-optional stored properties could be instantiated in the class's init functions, in which case application(_:willFinishLaunchingWithOptions:) will be run first.

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales