Nutrient Android SDK 10.8 release notes
23 October 2025
Nutrient Android SDK 10.8 introduces a modernized full-text search API, enhanced outline customization, significant rendering performance improvements, and refined theme consistency. This release also updates the minimum Android SDK version to API 23 to maintain compatibility with the latest Jetpack libraries.
Key highlights include the new LibraryDataSource interface for more flexible document indexing, font customization for outline elements, and substantial performance gains in rendering, zooming, and annotation handling. We’ve also improved accessibility support and restored the pre-rebrand color scheme for better theme consistency.
This release contains several fixes and enhancements. For the full list of changes, refer to our changelog.
Minimum SDK version update
Starting with version 10.8, the minimum supported Android API level is now 23 (previously API 21). This change was necessary because Google dropped support for API levels 21 and 22 in its Jetpack libraries, which are core dependencies of Nutrient Android SDK. This ensures you continue to receive up-to-date Android framework features and security improvements.
If your application currently supports Android 5.0 or 5.1 (API levels 21–22), you’ll need to update your minSdkVersion to 23 before upgrading to this release. For more details, refer to the migration guide section and Google’s Jetpack version information(opens in a new tab).
Modernized full-text search
The PdfLibrary full-text search functionality has been enhanced with new APIs that simplify document management and indexing:
LibraryDataSourceinterface — A flexible abstraction for providing documents to be indexed byPdfLibrary.LibraryFileSystemDataSourceimplementation — Automatically indexes all PDFs in a directory with built-in monitoring for file changes.
These new APIs replace the previous enqueueDocument* methods and provide better control over the indexing process. The implementation now supports automatic directory scanning and real-time updates when documents are added or removed. For detailed usage examples, refer to our indexed full-text search guide.
We also modernized the tokenizer configuration by replacing string-based tokenizer annotations with a type-safe TokenizerType enum. Note that the static PdfLibrary#get() functions have been removed; use the PdfLibrary constructor instead.
Enhanced outline customization
You now have granular control over font styling in the outline view. Three new attributes enable you to customize the typography of different outline elements:
pspdf__outlineViewTitleFont— For the outline titlepspdf__outlineViewLabelFont— For outline labelspspdf__outlineViewBodyFont— For outline body text
You can also set fonts programmatically using OutlineElement.Builder.setTypeface(), giving you complete control over the outline appearance to match your application’s design system.
Rendering performance improvements
This release delivers significant performance enhancements throughout the rendering pipeline:
- Faster zooming and page transitions — Removed rendering delays during zoom operations and page navigation, resulting in smoother interactions.
- Improved annotation performance — Optimized selection and deselection of annotations for more responsive editing.
- Better ink annotation stability — Fixed disappearing ink annotations on documents with complex backgrounds or large images.
- Shape annotation speed — Eliminated long delays when adding shape annotations programmatically on detailed documents.
These optimizations make the SDK more responsive, especially when working with complex documents containing high-resolution images.
Enhanced stylus support
Building on improvements from 10.7, we’ve continued to expand stylus capabilities:
- Stylus button support — The annotation eraser tool can now be triggered using the stylus button for a more intuitive experience.
- Tool coverage — Both the annotation eraser and redaction tools now have full stylus handling support.
- UI fixes — Resolved issues with annotation creation toolbar buttons getting squashed when a stylus is connected.
Additional improvements
This release includes several other enhancements:
- Theme consistency — Reverted SDK themes to the pre-10.1.0 color scheme, with improved consistency across light and dark appearances. Refer to the theme changes section in the migration guide for details.
- AI Assistant configuration — Updated for more flexible server connectivity. Refer to the migration guide for API changes.
- Embedded fonts support — Improved content editing compatibility with embedded fonts in PDFs.
- Dashed line rendering — Better visual quality for dashed lines.
- Free text annotation — Fixed text truncation and flickering issues during editing.
- Dependency updates — Updated numerous dependencies, including OkHttp 5.1.0, Retrofit 3.0.0, and Dokka 2.0.0.
- Target SDK update — Upgraded to Android API 36 (the latest version).
Looking ahead
With this release, we continue to prioritize performance, accessibility, and modern Android development practices. The updated minimum SDK requirement ensures you can leverage the latest Android framework features while maintaining a robust, accessible PDF experience. The modernized full-text search API provides a solid foundation for future indexing enhancements, and our ongoing focus on rendering performance will continue to deliver smoother document interactions.
Migration guide
This section provides technical details about API changes, breaking changes, and migration steps required when upgrading to Nutrient Android SDK 10.8.
API changes
This release includes several important API updates:
- Android API level requirement — Dropped support for Android API 21 and API 22. The minimum supported version is now API 23. This change was necessary because Google ended support for API 21 and 22 in its Jetpack libraries. Refer to the minimum SDK version update section and Jetpack libraries version information(opens in a new tab) for details.
- Full-text search modernization — Refer to the modernized full-text search section for complete details on the new APIs:
- Introduced the
LibraryDataSourceinterface andLibraryFileSystemDataSourceimplementation - The
enqueueDocument*methods inPdfLibraryare now deprecated in favor of the new data source APIs - The
Tokenizerannotation has been removed; use theTokenizerTypeenum instead - The static
PdfLibrary#get()functions have been removed; use thePdfLibraryconstructor instead
- Introduced the
- Outline font customization — Refer to the enhanced outline customization section for details. New style attributes:
pspdf__outlineViewTitleFontpspdf__outlineViewLabelFontpspdf__outlineViewBodyFont
- AI Assistant configuration — The
ipAddressparameter has been replaced withserverUrl. This enables you to specify the complete server endpoint, including the HTTP/HTTPS protocol, host, and port — for example,https://example.com:8080— providing more flexibility in configuring your AI Assistant connection.
Annotation rendering defaults
Starting with Nutrient Android SDK 10.8, annotations are now rendered by default on the overlay using platform rendering. This provides optimal performance and rendering quality for most use cases.
We strongly recommend not changing these defaults. Specifically:
- Do not set custom overlaid annotation types using
setOverlaidAnnotationTypes()onPdfFragmentorPdfConfiguration.Builder. - Do not change the default annotation overlay render strategy using
setAnnotationOverlayRenderStrategy().
The default configuration has been optimized to provide the best balance of performance and compatibility. Custom configurations may result in unexpected rendering behavior or performance degradation.
Theme changes
In Nutrient Android SDK 10.8, we reverted the SDK themes to the pre-10.1.0 color scheme and improved theme consistency across light and dark appearances. The Nutrient rebrand color scheme has been moved to the Catalog example app only.
This means the SDK now uses the original colors with all the required customization options available through the standard theming attributes. For more details, refer to our changelog.
If you require color customizations that aren’t currently supported by the SDK’s theming system, contact Support(opens in a new tab) for assistance.