PSPDFKit 9.2 Migration Guide
This guide covers updating an iOS or Mac Catalyst project from PSPDFKit 9 for iOS to PSPDFKit 9.2 for iOS. We encourage you to update as soon as possible, in order to take advantage of future new features and fixes.
PSPDFKit 9.2 for iOS fully supports iOS 11, 12, and 13. iOS 11 support will be removed later during the PSPDFKit 9 lifecycle. Xcode 11.3 or later is required to use this version of the SDK. Learn more in our version support guide.
Third-Party Styluses No Longer Supported
PSPDFKit for iOS added support for third-party styluses in 2014 with the release of PSPDFKit 3.7 for iOS. Today, that comes to an end as PSPDFKit 9.2 for iOS removes support for third-party styluses to favor the much more prevalent option in 2020: Apple Pencil.
With this, we’re also simplifying our stylus-selection UI, as well as redesigning the API you can use to get notified about the status of the Apple Pencil that might be connected to the device.
The APIs that have been affected by this are listed below.
- Removed
PSPDFStylusManager
UsePSPDFApplePencilManager
instead. - Removed
-[PSPDFKitGlobal stylusManager]
Use-[PSPDFKitGlobal applePencilManager]
instead. - Removed
PSPDFStylusViewController
UsePSPDFApplePencilController
instead. - Removed
PSPDFStylusDriver
This is no longer supported. - Removed
PSPDFStylusDriverDelegate
This is no longer supported. - Removed
PSPDFStylusTouch
This is no longer supported. - Removed
PSPDFStylusTouchClassification
This is no longer supported. - Removed
PSPDFStylusTouchClassificationInfo
This is no longer supported. - Removed
PSPDFDefaultStylusTouch
This is no longer supported. - Removed
PSPDFApplePencilDriver
This driver’s functionality is now handled byPSPDFApplePencilManager
. - Removed
PSPDFStylusButtonAction
This is no longer supported. - Removed
PSPDFStylusManagerConnectionStatusChangedNotification
UsePSPDFApplePencilEnabledChangedNotification
to get notified when Apple Pencil is enabled/disabled. - Removed
PSPDFStylusStatusButton
UsePSPDFApplePencilStatusButton
instead. - Removed
-PSPDFAnnotationToolbar.showsStylusButtonAutomatically
Use-PSPDFAnnotationToolbar.showsApplePencilButtonAutomatically
instead. - Removed
-PSPDFAnnotationToolbar.showingStylusButton
UsePSPDFAnnotationToolbar.showingApplePencilButton
instead. - Removed
-[PSPDFAnnotationToolbar setShowingStylusButton:animated:]
Use-[PSPDFAnnotationToolbar setShowingApplePencilButton:animated:]
instead. - Removed
-PSPDFAnnotationToolbar.stylusButton
Use-PSPDFAnnotationToolbar.applePencilButton
instead.
Apple Pencil (first and second generation) continues to be fully supported by PSPDFKit for iOS out of the box.
Localized String Key Changes
The localized string keys for annotation types and tools have been simplified. If you’re providing a custom localization, check your use of any of the string keys below and ensure you’re using the correct keys in the correct contexts.
Before:
Key | English Text | Use |
---|---|---|
Redact | Redact | Accessibility label for text selection menu item. |
Redaction | Redaction | Type of an annotation for redaction. |
Note | Note | Type of an annotation for adding notes/comments. |
Text | Text | This was not used. |
FreeText | Text | Type of an annotation that shows text on the page. |
File | File | This was not used. |
Squiggle | Squiggle | This was not used. |
Squiggly | Squiggly | Type of an annotation that shows a squiggly underline. |
The new localized string keys always use the annotation type names from the PDF specification. Entries for other keys listed above have been removed. You can obtain all of these keys using constants like PSPDFAnnotationStringRedaction
and PSPDFAnnotationStringNote
etc.
After:
Key | English Text | Use |
---|---|---|
Redact | Redaction | Type of an annotation for redaction. Now also used as the accessibility label for the text selection menu. |
Text | Note | Type of an annotation for adding notes/comments. |
FreeText | Text | Type of an annotation that shows text on the page. |
FileAttachment | File | Type of an annotation that contains an embedded file. |
Squiggly | Squiggle | Type of an annotation that shows a squiggly underline. |