Nutrient 6 migration guide
Nutrient Android SDK 6 is a major release and includes many new features and a few breaking changes. This article provides a set of guidelines for migrating from Nutrient Android SDK 5.5 to Nutrient Android SDK 6.0.
Updated dependencies
With Nutrient 6, we updated various dependencies of Nutrient:
- Build System Dependencies- The Android Gradle plugin used to build Nutrient was updated to version 3.5.0. In addition, all sample applications now use Android Gradle plugin 3.5.0 as well.
- Kotlin was updated to version 1.3.50.
 
Merge of Nutrient and Instant libraries
Starting with Nutrient 6.0, we no longer provide separate libraries for Nutrient and Instant. Instant client code is now part of the Nutrient library.
If you are currently using Instant and want to update to 6.0, you need to remove its dependency from your project’s dependencies block and add the OkHttp dependency, like so:
dependencies {    implementation 'com.pspdfkit:pspdfkit:6.0'   implementation 'com.pspdfkit:pspdfkit-instant:5.5.0'   implementation 'com.squareup.okhttp3:okhttp:3.11.0'}Notable changes and deprecations
Dropped deprecated fields and methods
Here’s a list of other fields and methods we dropped:
- AnnotationProvider#getAllAnnotationsOfType()no longer returns- Observable<Annotation>but now returns- List<Annotation>. You can use- AnnotationProvider#getAllAnnotationsOfTypeAsync()instead.
- PdfFragment#getAnnotationDefaults(). Use- PdfFragment#getAnnotationConfiguration()instead.
- PdfFragment#setAnnotationDefaultsProvider(). Use- AnnotationConfigurationRegistry#put()instead.
- PSPDFKit#setLoggingEnabled(). To disable logging, remove all loggers via- PdfLog#removeAllLoggers(). Alternatively, implement a custom logging policy by setting multiple custom- Loggers via- PdfLog#setLoggers(Logger...).
- AnnotationDefaultsManager. Replaced by- AnnotationConfigurationRegistry.
- AnnotationDefaultsProvider. Replaced by- AnnotationConfiguration.
- com.pspdfkit.annotations.defaults.AnnotationProperty. Use- com.pspdfkit.annotations.configuration.AnnotationPropertyinstead.
- AnnotationAggregationStrategyDefaultsProvider. Use- AnnotationAggregationStrategyConfigurationinstead.
- AnnotationDefaultsAlphaProvider. Use- AnnotationAlphaConfigurationinstead.
- AnnotationDefaultsBorderStyleProvider. Use- AnnotationBorderStyleConfigurationinstead.
- AnnotationDefaultsColorProvider. Use- AnnotationColorConfigurationinstead.
- AnnotationDefaultsFillColorProvider. Use- AnnotationFillColorConfigurationinstead.
- AnnotationDefaultsFontProvider. Use- AnnotationFontConfigurationinstead.
- AnnotationDefaultsLineEndTypeProvider. Use- AnnotationLineEndsConfigurationinstead.
- AnnotationDefaultsNoteIconProvider. Use- AnnotationNoteIconConfigurationinstead.
- AnnotationDefaultsOutlineColorProvider. Use- AnnotationOutlineColorConfigurationinstead.
- AnnotationDefaultsOverlayTextProvider. Use- AnnotationOverlayTextConfigurationinstead.
- AnnotationDefaultsPreviewProvider. Use- AnnotationDefaultsProviderinstead.
- AnnotationDefaultsRepeatOverlayTextProvider. Use- AnnotationOverlayTextConfigurationinstead.
- AnnotationDefaultsTextSizeProvider. Use- AnnotationTextSizeConfigurationinstead.
- AnnotationDefaultsThicknessProvider. Use- AnnotationThicknessConfigurationinstead.
- AnnotationDefaultsStampProvider. Use- StampAnnotationConfiguration.Builderinstead.
- EraserDefaultsProvider. Use- EraserToolConfiguration.Builderinstead.
- FileAnnotationDefaultsProvider. Use- FileAnnotationConfiguration.Builderinstead.
- FreeTextAnnotationDefaultsProvider. Use- FreeTextAnnotationConfiguration.Builderinstead.
- InkAnnotationDefaultsProvider. Use- InkAnnotationConfiguration.Builderinstead.
- LineAnnotationDefaultsProvider. Use- LineAnnotationConfiguration.Builderinstead.
- MarkupAnnotationDefaultsProvider. Use- MarkupAnnotationConfiguration.Builderinstead.
- NoteAnnotationDefaultsProvider. Use- NoteAnnotationConfiguration.Builderinstead.
- RedactionAnnotationDefaultsProvider. Use- RedactionAnnotationConfiguration.Builderinstead.
- ShapeAnnotationDefaultsProvider. Use- ShapeAnnotationConfiguration.Builderinstead.
- StampAnnotationDefaultsProvider. Use- StampAnnotationConfiguration.Builderinstead.
- DEFAULT_STAMP_ANNOTATION_PDF_WIDTH,- DEFAULT_STAMP_ANNOTATION_PDF_HEIGHT, and- DEFAULT_STAMP_ANNOTATION_ASPECT_RATIOhave been moved from- StampAnnotationDefaultsProviderto- StampPickerItem.
- AnnotationPreferencesManager#getBorderStyle(). Use- BorderStylePreset#getBorderStyle()on the border style preset returned via- AnnotationPreferencesManager#getBorderStylePreset().
- AnnotationPreferencesManager#setBorderStyle(). Configure- BorderStylein- BorderStylePresetand set it via- AnnotationPreferencesManager#setBorderStylePreset().
- AnnotationPreferencesManager#getBorderDashArray(). Use- BorderStylePreset#getDashArray()on the border style preset returned via- AnnotationPreferencesManager#getBorderStylePreset().
- AnnotationPreferencesManager#setBorderDashArray(). Use- BorderStylePresetset via- AnnotationPreferencesManager#setBorderStylePreset().
- PdfConfiguration.Builder#textSharingEnabled(). Use- PdfConfiguration.Builder#setEnabledShareFeatures()with- ShareFeatures#TEXT_SELECTION_SHARING,- ShareFeatures.NOTE_ANNOTATION_SHARING, and- ShareFeatures.FREE_TEXT_ANNOTATION_SHARINGinstead.
- PdfConfiguration.Builder#embeddedFileSharingEnabled(). Use- PdfConfiguration.Builder#setEnabledShareFeatures()with- ShareFeatures#EMBEDDED_FILE_SHARINGinstead.
- PdfConfiguration.Builder#sharingNoteEditorContentEnabled(). Use- PdfConfiguration.Builder#setEnabledShareFeatures()with- ShareFeatures#NOTE_EDITOR_CONTENT_SHARINGinstead.
- PdfConfiguration.Builder#setSignatureSavingEnabled(). Use- PdfConfiguration.Builder#signatureSavingStrategy()instead.
- PdfConfiguration.Builder#setCustomerSignatureFeatureEnabled(). Use- PdfConfiguration.Builder#signatureSavingStrategy()instead.
- PdfConfiguration#isTextSharingEnabled(). Use- PdfConfiguration#getEnabledShareFeatures()and check if- ShareFeatures#TEXT_SELECTION_SHARINGis enabled.
- PdfConfiguration#isEmbeddedFilesSharingEnabled(). Use- PdfConfiguration#getEnabledShareFeatures()and check if- ShareFeatures#EMBEDDED_FILE_SHARINGis enabled.
- PdfConfiguration#isSharingNoteEditorContentEnabled(). Use- PdfConfiguration#getEnabledShareFeatures()and check if- ShareFeatures#NOTE_EDITOR_CONTENT_SHARINGis enabled.
- PdfConfiguration#isSignatureSavingEnabled(). Use- PdfConfiguration#getSignatureSavingStrategy()instead.
- PdfConfiguration#isCustomerSignatureFeatureEnabled(). Use- PdfConfiguration#getSignatureSavingStrategy()instead.
- PdfActivityConfiguration.Builder#sharingNoteEditorContentEnabled(). Use- PdfActivityConfiguration.Builder#enabledShareFeatures()with- ShareFeatures#NOTE_EDITOR_CONTENT_SHARINGinstead.
- PdfActivityConfiguration.Builder#enableShare(). Use- PdfActivityConfiguration.Builder#enabledShareFeatures()with- ShareFeatures.all()instead.
- PdfActivityConfiguration.Builder#disableShare(). Use- PdfActivityConfiguration.Builder#enabledShareFeatures()with- ShareFeatures.none()instead.
- PdfActivityConfiguration.Builder#setSignatureSavingEnabled(). Use- PdfActivityConfiguration.Builder#signatureSavingStrategy()instead.
- PdfActivityConfiguration.Builder#setCustomerSignatureFeatureEnabled(). Use- PdfActivityConfiguration.Builder#signatureSavingStrategy()instead.
- PdfActivityConfiguration#isShareEnabled(). Use- PdfActivityConfiguration#getEnabledShareFeatures()instead.
- ThumbnailBarMode#THUMBNAIL_BAR_MODE_DEFAULT. Use- ThumbnailBarMode#THUMBNAIL_BAR_MODE_FLOATINGinstead.
- PdfProcessorTask#addPdfToPage(). Use- PdfProcessorTask#mergePage()instead.
- SearchOptions.Builder(Context). Use no parameter constructor instead.
- TextSearch(Context, PdfDocument, PdfConfiguration). Use- TextSearch(PdfDocument, PdfConfiguration)instead.
- Signer#OnSigningCompleteCallback.- Signer#signFormField()is now blocking and no longer requires this callback.
- Signer#signFormField(SignatureFormField, BiometricSignatureData, OutputStream, OnSigningCompleteCallback). Use- Signer#signFormField(SignerOptions)instead.
- Signer#signFormField(SignerOptions, OnSigningCompleteCallback). Use- Signer#signFormField(SignerOptions)instead.
- Signer#signFormFieldAsync(SignatureFormField, BiometricSignatureData, OutputStream). Use- Signer#signFormFieldAsync(SignerOptions)instead.
- SignaturePickerFragment#setSignaturePickerOrientation(). Pass in the desired- SignatureOptionsto- SignaturePickerFragment#show()instead.
- SignaturePickerFragment#showSignaturePicker(). Use- SignaturePickerFragment#show()instead.
- AnnotationCreationController#getBorderStyle(). Use border style via- BorderStylePreset#getBorderStyle()returned by- AnnotationCreationController#getBorderStylePreset().
 
  
  
  
 