Archive

2024

2023

Illustration: How to Persist Zoom While Scrolling through a Document Using the PSPDFKit Android Library TUTORIALS Android How To How to Persist Zoom While Scrolling through a Document Using the PSPDFKit Android Library Learn how to keep the same zoom level across a document during scrolling. Illustration: Case Study: How Trinoor Uses PSPDFKit to Drive Operational Excellence with Flexible, Mobile Applications for the Energy and Utilities Market CUSTOMER STORIES Case Study React Native iOS Android Case Study: How Trinoor Uses PSPDFKit to Drive Operational Excellence with Flexible, Mobile Applications for the Energy and Utilities Market How Trinoor uses PSPDFKit to enable operations in the energy and utilities market. Illustration: PSPDFKit 8.9 for Android Revamps Advanced Digital Signatures PRODUCTS Android Releases PSPDFKit 8.9 for Android Revamps Advanced Digital Signatures This feature-packed release of our Android PDF library focuses on a more simplified and powerful digital signing API, along with improved measurement tools, a date and time picker, Kotlin API docs, and more. Illustration: Kotlin Non-Nullable Pitfall DEVELOPMENT Kotlin Android Development Kotlin Non-Nullable Pitfall Under what circumstances a non-nullable value might be null. Illustration: How to Add Annotations to PDFs Using the Android Library TUTORIALS Android Annotations How To How to Add Annotations to PDFs Using the Android Library Learn how to annotate PDFs using the PSPDFKit Android library. Illustration: PSPDFKit 8.8 for Android Enhances Measurement Tools PRODUCTS Android Releases PSPDFKit 8.8 for Android Enhances Measurement Tools This release of our Android PDF library focuses on improving our measurement tools to provide users with more options and a streamlined PDF-measuring experience. Illustration: PSPDFKit 8.7 for Android Adds Content Editor PRODUCTS Android Releases PSPDFKit 8.7 for Android Adds Content Editor This release of our Android PDF library adds support for editing original text in PDFs. Illustration: Run a Flutter App on an Emulator inside Docker DEVELOPMENT Android Flutter How To Development Run a Flutter App on an Emulator inside Docker How to run a Flutter application on a dockerized Android emulator. Illustration: PSPDFKit 8.5 for Android PRODUCTS Android Releases PSPDFKit 8.5 for Android This release of our Android PDF SDK adds new edit menus for creating and selecting annotations, support for Hebrew localization, multipage TIFF, and more.

2022

Illustration: Pairs and Triples in Kotlin (And Why You Shouldn't Use Them) DEVELOPMENT Android Kotlin Development Pairs and Triples in Kotlin (And Why You Shouldn't Use Them) An under the hood overview of pairs and triples in Kotlin. Illustration: Road to Polyglot Development DEVELOPMENT Android Web Development Culture Road to Polyglot Development A blog post outlining my transition to polyglot development for the web. Illustration: How to Handle NDK Crashes DEVELOPMENT Android Support NDK Development How to Handle NDK Crashes Handling NDK crashes when using PSPDFKit for Android. Illustration: Kotlin Context Receivers — A Preview DEVELOPMENT Kotlin Android How To Development Kotlin Context Receivers — A Preview A short summary about the upcoming Kotlin feature, context receivers. Illustration: How to Sign a PDF on Android with PSPDFKit's Signature Library TUTORIALS Android Signing How To How to Sign a PDF on Android with PSPDFKit's Signature Library Learn how to add signatures to a PDF with PSPDFKit's Android signature library. Illustration: How to Build an Android Image Viewer with PSPDFKit Library TUTORIALS Android How To How to Build an Android Image Viewer with PSPDFKit Library Learn how to build an Android image viewer using PSPDFKit's library. Illustration: How to Convert a Word Document to PDF on Android TUTORIALS Android Server How To How to Convert a Word Document to PDF on Android How to convert a Word document to PDF on Android. Illustration: Measurement Tools — Measure Distance, Perimeter, and Area in PDFs PRODUCTS iOS Android Web Releases Components Measurement Tools — Measure Distance, Perimeter, and Area in PDFs Measure distance and area on your blueprints and floor plans with PSPDFKit's new measurement tools. Illustration: Build an Android PDF viewer using Nutrient: A step-by-step guide TUTORIALS Android PDF Viewer How To Build an Android PDF viewer using Nutrient: A step-by-step guide Discover how to create a powerful Android PDF viewer with Nutrient. Follow this step-by-step guide to integrate and customize the Android PDF viewer library for your app. Illustration: PSPDFKit 8.3 for Android Adds Support for PDF Advanced Electronic Signatures PRODUCTS Android Releases PSPDFKit 8.3 for Android Adds Support for PDF Advanced Electronic Signatures PSPDFKit 8.3 for Android adds support for PDF Advanced Electronic Signatures, new examples to the Catalog app, a new set of icons for annotation creation and annotation editing toolbars, and more. Illustration: Cross-Platform Mobile Frameworks — An iOS Engineer's Perspective DEVELOPMENT Android iOS Cordova Flutter Ionic React Native Xamarin Development Cross-Platform Mobile Frameworks — An iOS Engineer's Perspective What I learned while working on cross-platform mobile frameworks. Illustration: How to Load OBJ Files with MTL in Android DEVELOPMENT Android Tips Development How to Load OBJ Files with MTL in Android Loading .obj files with .mtl using Three.js in Android. Illustration: PSPDFKit 8.2 for Android Adds Cloud Annotation Tool PRODUCTS Android Releases PSPDFKit 8.2 for Android Adds Cloud Annotation Tool PSPDFKit 8.2 for Android adds a dedicated tool to create cloud annotations, support for bleed and trim boxes, downloadable unstripped NDK symbols, and more. Illustration: Java-to-Kotlin Conversion Best Practices BLOG Android Kotlin Insights Java-to-Kotlin Conversion Best Practices This blog post provides a few handy tips for performing Java-to-Kotlin conversion. Illustration: How to Programmatically Stamp and Digitally Sign a Document on Android TUTORIALS Android How To Signing How to Programmatically Stamp and Digitally Sign a Document on Android This post shows how to use the PSPDFKit 8 for Android Electronic Signatures and Digital Signatures components to digitally stamp and sign a document. Illustration: How to download and display a PDF document in Flutter with Nutrient TUTORIALS Flutter Android iOS How To How to download and display a PDF document in Flutter with Nutrient Learn how to download and display PDFs in your Flutter app using Nutrient, with a step-by-step setup guide and code examples to streamline PDF viewing for users. Illustration: How We Expose Jetpack Compose APIs DEVELOPMENT Android Kotlin Jetpack Compose Insights Development How We Expose Jetpack Compose APIs A few lessons we learned about API design for modern Android.

2021

Illustration: Autosizing Fonts for Android EditTexts DEVELOPMENT Android Kotlin Tips Development Autosizing Fonts for Android EditTexts Transfer Android's TextView autosizing capability to EditTexts Illustration: PSPDFKit 8 for Android Adds Electronic Signatures and Jetpack Compose PRODUCTS Android Releases PSPDFKit 8 for Android Adds Electronic Signatures and Jetpack Compose Introducing PSPDFKit 8 for Android — with Electronic Signatures, support for Jetpack Compose apps, and many other improvements. Illustration: Introducing Jetpack Compose Support DEVELOPMENT Android Kotlin Jetpack Compose UI/UX Development Introducing Jetpack Compose Support The Android PDF SDK you know and love now supports Jetpack Compose! Illustration: Refactoring Git Branches with Interactive Rebase and Autosquash in Android Studio DEVELOPMENT Android Productivity git Development Refactoring Git Branches with Interactive Rebase and Autosquash in Android Studio A primer on using Git's interactive rebase feature, and how to use it within Android Studio to housekeep commits. Illustration: Opening a PDF in a Jetpack Compose Application TUTORIALS Android Kotlin How To Jetpack Compose PDF Opening a PDF in a Jetpack Compose Application How to open a PDF in a Jetpack Compose application. Illustration: PSPDFKit 7 for Android Adds Real-Time Communication with Instant Comments PRODUCTS Android Releases PSPDFKit 7 for Android Adds Real-Time Communication with Instant Comments Introducing PSPDFKit 7 for Android — with Instant Comments and many other improvements. Illustration: How to Open a PDF in React Native Using the Document Picker TUTORIALS Android iOS React Native JavaScript How To How to Open a PDF in React Native Using the Document Picker A video tutorial about how to open a PDF in React Native using the document browser. Illustration: Creating and Filling Out Forms Programmatically on Android TUTORIALS Android Kotlin Java How To Creating and Filling Out Forms Programmatically on Android This blog post shows how to create and fill out forms programmatically on Android. Illustration: Avoiding Primitive Type Saturation in Kotlin DEVELOPMENT Android Kotlin Development Avoiding Primitive Type Saturation in Kotlin Enough of fun getString(string: String): String – let's make greater use of Kotlin's powerful type system. Illustration: Why Should You Care about Manual Testing? DEVELOPMENT Android Web Testing UI/UX Insights Development Why Should You Care about Manual Testing? How to approach manual testing pragmatically for quality products you can be proud of. Illustration: Embedding Audio in PDFs: Sound Annotations in Depth TUTORIALS Android Kotlin PDF How To Annotations Embedding Audio in PDFs: Sound Annotations in Depth An introduction to PDF sound annotations. Illustration: How to Customize Our Flutter PDF SDK TUTORIALS Android Flutter Java How To How to Customize Our Flutter PDF SDK How to fork and modify the PSPDFKit Flutter PDF SDK for your own application. Illustration: Converting an Image to PDF in Kotlin TUTORIALS Android Kotlin How To Converting an Image to PDF in Kotlin Learn how to convert an image to PDF using PSPDFKit for Android and Kotlin. Illustration: PSPDFKit 6.6 for Android PRODUCTS Android Releases PSPDFKit 6.6 for Android Introducing PSPDFKit 6.6 for Android — including support for bold and italic fonts, annotation selection UI customization, and many optimizations. Illustration: Digital Signing on Android TUTORIALS Android Kotlin Security Signing PDF How To Digital Signing on Android How digital signing and contained signatures on Android work. Illustration: Performing OCR on Android TUTORIALS Android Kotlin How To Performing OCR on Android A post showing how to use PSPDFKit for Android to perform OCR on scanned documents.

2020

Illustration: How Updating to Kotlin 1.4 Broke Our Linter Rules DEVELOPMENT Android Kotlin Insights Development How Updating to Kotlin 1.4 Broke Our Linter Rules How the update to Android Gradle plugin 4.1 and Kotlin 1.4 can break custom linter rules, and how to fix it. Illustration: How to Create Multiple Redactions with Search on Android TUTORIALS Android Kotlin How To Redaction How to Create Multiple Redactions with Search on Android Learn how you can leverage the redaction functionality of PSPDFKit for Android to effectively remove text patterns from documents. Illustration: Adding a Persistent Annotation Sidebar TUTORIALS Android How To Kotlin Adding a Persistent Annotation Sidebar Learn how to put together all the components PSPDFKit provides to build a custom Annotation UI. Illustration: Optical Character Recognition in Scanned PDFs PRODUCTS Android iOS Web Java .NET Components Optical Character Recognition in Scanned PDFs An overview of how OCR can enhance scanned documents to speed up common operations. We explain what OCR is, why it's useful, and how it works. Illustration: PSPDFKit 6.5 for Android: Android PDF Library PRODUCTS Android Releases PSPDFKit 6.5 for Android: Android PDF Library Introducing PSPDFKit 6.5 for Android — including our new OCR component, simplified integration, and open source examples. Illustration: PSPDFKit 6.4 for Android PRODUCTS Android Releases PSPDFKit 6.4 for Android Introducing PSPDFKit 6.4 for Android — including our new Reader View component and Office Files support. Illustration: Think First, Code Later DEVELOPMENT Android Kotlin Tips Productivity Development Think First, Code Later A case study on how we design features and APIs for PSPDFKit for Android. Illustration: How to Reduce Flakiness in Automated UI Testing on Android DEVELOPMENT Android Kotlin Tips Productivity Testing Development How to Reduce Flakiness in Automated UI Testing on Android This blog post discusses tips and best practices on how to reduce flakiness in automated UI testing on Android. Illustration: PSPDFKit 6.3 for Android PRODUCTS Android Releases PSPDFKit 6.3 for Android Introducing PSPDFKit 6.3 for Android — with several improvements for Kotlin users. Illustration: Change Android Themes Instantly Using the Circular Reveal Animation DEVELOPMENT Android Kotlin Tips UI/UX Development Change Android Themes Instantly Using the Circular Reveal Animation This blog post investigates how to achieve nice animations when changing themes. Illustration: PSPDFKit 6.2 for Android PRODUCTS Android Releases PSPDFKit 6.2 for Android Introducing PSPDFKit 6.2 for Android — with HTML-to-PDF conversion and several improvements to code structure and documentation. Illustration: Inserting an Image into a PDF on Android TUTORIALS Android Kotlin PDF How To Inserting an Image into a PDF on Android We provide a step-by-step explanation of how to insert an image into a PDF on Android. Illustration: Filtering Tests in Android DEVELOPMENT Android Java Testing Gradle Development Filtering Tests in Android A look at the android.support.test.filters library and what it provides you with.

2019

Illustration: PSPDFKit 6.1 for Android PRODUCTS Android Releases PSPDFKit 6.1 for Android Introducing PSPDFKit 6.1 for Android — with improvements to accessibility, availability of PDF page overlay views, support for custom document outlines, and more. Illustration: Our Journey from Genymotion to the Android Emulator DEVELOPMENT Android Insights Development Our Journey from Genymotion to the Android Emulator How we migrated our Genymotion-based CI to an AVD. Illustration: Persisting the Tabs State on Android TUTORIALS Android Kotlin How To Persisting the Tabs State on Android A blog post describing how to persist the tabs state inside PdfActivity. Illustration: How We Improved Keyboard Navigation Accessibility in Our Android SDK DEVELOPMENT Android Kotlin Tips Accessibility Insights Development How We Improved Keyboard Navigation Accessibility in Our Android SDK A look at the steps we took to start improving the accessibility of our Android SDK. Illustration: Convert a PDF to an Image on Android TUTORIALS Android PDF How To Convert a PDF to an Image on Android This article explains how to render your PDF files to images using both Android's built-in PDF libraries and PSPDFKit. Illustration: PSPDFKit 6 for Android PRODUCTS Android Releases PSPDFKit 6 for Android PSPDFKit 6 for Android improves on performance and accessibility, auto-expands free text annotations, adds annotation z-index ordering and a new all-in-one fragment, and more. Illustration: The Android Drag-and-Drop Framework in Practice DEVELOPMENT Android Tips Development The Android Drag-and-Drop Framework in Practice Using the Android drag-and-drop framework — from theory to implementation. Illustration: Add a Watermark to a PDF on Android TUTORIALS Android Kotlin PDF How To Add a Watermark to a PDF on Android How to add a watermark to a PDF on Android. Illustration: Understanding the Gradle Build System DEVELOPMENT Android Java Gradle Insights Development Understanding the Gradle Build System In this article, we'll explore the Gradle build system, how it works, and why it is the new standard for building Android projects. Illustration: Merge PDF Documents on Android TUTORIALS Android Kotlin PDF How To Merge PDF Documents on Android We'll take a look at two ways to merge PDF documents on Android. Illustration: Challenges of Using Emojis with C++ DEVELOPMENT Android iOS macOS Windows C++ Insights Development Challenges of Using Emojis with C++ In this article, we discuss the challenges of implementing your own custom emoji support in a cross-platform way. Illustration: What Is an Intent? DEVELOPMENT Android Kotlin Java Insights Development What Is an Intent? An overview of intents, their uses, and pitfalls to consider. Illustration: Dealing with Large Memory Requirements on Android DEVELOPMENT Android Tips Development Dealing with Large Memory Requirements on Android This article provides tips for optimizing memory usage of your apps. Illustration: NDK Debugging DEVELOPMENT Android Debugging Development NDK Debugging A set of tips for debugging native NDK code in Android apps. Illustration: How Do I Fix NetworkOnMainThreadException? DEVELOPMENT Android Kotlin Tips Development How Do I Fix NetworkOnMainThreadException? A post detailing what NetworkOnMainThreadException is and how to prevent it. Illustration: The Role of PSPDFKit as a PDF Processor DEVELOPMENT Android iOS Web PDF Development The Role of PSPDFKit as a PDF Processor How we fit into the PDF landscape. Illustration: Performance Evaluation of Linked Lists DEVELOPMENT Android Java Tips Development Performance Evaluation of Linked Lists Today we'll delve into the performance evaluation of linked lists, a controversial topic among many experienced developers, and try to understand why they trigger a warning in the Error Prone report. Illustration: PSPDFKit 5.5 for Android PRODUCTS Android Releases PSPDFKit 5.5 for Android Introducing PSPDFKit 5.5 for Android — including a floating thumbnail bar, RTL document support, image stamp rotation, better performance, and more. Illustration: The Soft Keyboard on Android DEVELOPMENT Android Tips Development The Soft Keyboard on Android Tips for working with the soft keyboard on Android. Illustration: How to View PDF on Android TUTORIALS Android Kotlin PDF How To How to View PDF on Android This article presents existing free or open source libraries for opening PDF files in Android apps. Illustration: Retaining Objects Using a Fragment DEVELOPMENT Android Kotlin Tips Development Retaining Objects Using a Fragment An overview of how to use a fragment to retain objects during a configuration change. Illustration: A Gentle Introduction to RxJS TUTORIALS Android How To A Gentle Introduction to RxJS A short introduction to RxJS, highlighting the differences between traditional event-based JavaScript and the use of Observables. Illustration: Problems with Nullability Annotations DEVELOPMENT Android Java Tips Insights Development Problems with Nullability Annotations A look at some issues with Android's nullability annotations and how to fix them. Illustration: How to open a PDF in Flutter using advance_pdf_viewer2 TUTORIALS Android Dart Flutter How To How to open a PDF in Flutter using advance_pdf_viewer2 A tutorial on how to open a PDF in Flutter. Illustration: Understanding Android Dimensions DEVELOPMENT Android Tips Development Understanding Android Dimensions A post about existing Android dimensions, their purpose, and common conversion rules. Illustration: PSPDFKit 5.4 for Android PRODUCTS Android Releases PSPDFKit 5.4 for Android Introducing PSPDFKit 5.4 for Android — featuring sound annotations, cloudy borders, a new color picker, a magnifier widget, and much more. Illustration: Gradle Task Configuration Avoidance in Android Builds DEVELOPMENT Android Gradle Development Gradle Task Configuration Avoidance in Android Builds An overview of Gradle's task configuration avoidance APIs and how they are used by the Android build system. Illustration: How to Use Android App Bundles DEVELOPMENT Android Tips Development How to Use Android App Bundles This blog post explains what Android App Bundles are and how to upload them to Google Play. Illustration: Kotlin Coroutines DEVELOPMENT Android Kotlin Insights Development Kotlin Coroutines A look at Kotlin coroutines and how they compare to other solutions for concurrency. Illustration: Java 8 in Android Apps DEVELOPMENT Android Java Development Java 8 in Android Apps This article explains how to enable Java 8 features in an Android app and gives an overview of the available Java 8 features. Illustration: Getting Started with PSPDFKit for Flutter TUTORIALS iOS Android Flutter How To Getting Started with PSPDFKit for Flutter How to get started with PSPDFKit for Flutter. Illustration: Handling Nullability in Your Code DEVELOPMENT Android Java Tips Development Handling Nullability in Your Code A brief excursion into the Java type system, nullability, and remedies for the billion-dollar mistake. Illustration: PSPDFKit 5.3 for Android PRODUCTS Android Releases PSPDFKit 5.3 for Android Introducing PSPDFKit 5.3 for Android — featuring improved ink annotation tools, custom annotation data support, performance improvements, and much more. Illustration: Using ViewModels to Retain State on Android DEVELOPMENT Android Kotlin Tips Jetpack Compose Development Using ViewModels to Retain State on Android How to use Android's ViewModel class to retain complex objects across configuration changes. Illustration: What are configuration changes in Android? DEVELOPMENT Android Tips Development What are configuration changes in Android? An overview of configuration changes on Android, including best practices for modern development. Illustration: Incremental and Full Save in PDFs DEVELOPMENT Android iOS Windows PDF Tips Insights Development Incremental and Full Save in PDFs This article goes into what's involved when incrementally or fully saving a PDF, and why it matters. Illustration: Sharing Business Logic Using React Native DEVELOPMENT Android Kotlin JavaScript React Native Development Sharing Business Logic Using React Native Not only can React Native be used to provide the UI for your application, but it is also a convenient way to share business logic. Illustration: Android Debug Bridge Tricks and Tips DEVELOPMENT Android Debugging Development Android Debug Bridge Tricks and Tips An introduction to Android Debug Bridge (adb) and an overview of some tricks. Illustration: How to Test REST API Clients in Android Apps DEVELOPMENT Android Kotlin Tips Instant Development How to Test REST API Clients in Android Apps This article shows how we built simple and flexible integration tests for PSPDFKit Instant that are using a custom abstraction layer on top of an OkHttp mocked web server. Illustration: PSPDFKit 5.2 for Android PRODUCTS Android Releases PSPDFKit 5.2 for Android Introducing PSPDFKit 5.2 for Android — featuring multithreaded rendering, new signature APIs, a smaller library size, and many more improvements. Illustration: Saving the Activity State DEVELOPMENT Android Java Tips Development Saving the Activity State An overview of how to make sure your activity state is saved. Illustration: Using the Bottom Navigation View in Android DEVELOPMENT Android Kotlin Tips Development Using the Bottom Navigation View in Android An introduction to implementing bottom navigation in your app with a simple example that incorporates synced page switching as well. Illustration: Inspecting APK Files DEVELOPMENT Android Tips Debugging Development Inspecting APK Files This article discusses the basics of Android reverse engineering using the Apktool, smali, and Java decompilers.

2018

Illustration: PSPDFKit 5.1 for Android PRODUCTS Android Releases PSPDFKit 5.1 for Android Introducing PSPDFKit 5.1 for Android — featuring a new free-form redaction tool, AndroidX support, and many more improvements. Illustration: External storage permissions on Android DEVELOPMENT Android Development External storage permissions on Android An exploration of how permissions work, starting from a high level and working down to the lower lever managed by FUSE, the native Android module that interacts with the file system. Illustration: How to Increase the Logcat Buffer Size DEVELOPMENT Android Tips Development How to Increase the Logcat Buffer Size Don't lose your logs. Increase your logcat buffer! Illustration: Rendering Tests Using Robolectric DEVELOPMENT Android Testing Development Rendering Tests Using Robolectric Rendering tests using Robolectric with a custom bitmap shadow. Illustration: PSPDFKit 5 for Android PRODUCTS Android Releases PSPDFKit 5 for Android Introducing PSPDFKit 5 for Android — featuring the new Redaction and Comparison components, many improvements to existing APIs, and full support for Android 9 Pie. Illustration: What are Kotlin contracts and how are they useful? DEVELOPMENT Android Kotlin Insights Development What are Kotlin contracts and how are they useful? An overview of the experimental Kotlin Contracts API. Illustration: Using paths to draw shapes with borders DEVELOPMENT Android Tips Development Using paths to draw shapes with borders How to use a flexible path API to draw complex shapes with borders. Illustration: Examples for Using Our Frameworks PRODUCTS iOS Android Web Tips Examples for Using Our Frameworks Here at PSPDFKit, we believe doing practical work is the best way to learn things, so we decided to create a few example apps to help customers explore our framework. Illustration: PSPDFKit 4.8 for Android PRODUCTS Android Releases PSPDFKit 4.8 for Android Introducing PSPDFKit 4.8 for Android — with document tabs, a pop-up toolbar, custom free text fonts, a new Document Editor API, and more. Illustration: Advanced Techniques for React Native UI Components TUTORIALS React Native Android How To Advanced Techniques for React Native UI Components An outline of some of the more advanced techniques you can apply to React Native UI components on Android. Illustration: RxJava for Multi-Level Data Retrieval DEVELOPMENT Android RxJava Kotlin Tips Development RxJava for Multi-Level Data Retrieval RxJava can be useful for many things, and in this post, we’ll have a look at how to use it to add offline support to your app. Illustration: How I Got Started with Flutter DEVELOPMENT Flutter Android iOS Insights Development How I Got Started with Flutter A short review of Flutter from a mobile developer’s standpoint. Illustration: Moving Your Gradle Build Scripts to Kotlin DEVELOPMENT Android Kotlin Tips Development Moving Your Gradle Build Scripts to Kotlin Another take on writing your project's Gradle build files in pure Kotlin code. Illustration: PSPDFKit 4.7 for Android PRODUCTS Android Releases PSPDFKit 4.7 for Android Introducing PSPDFKit 4.7 for Android — featuring JavaScript support, a document info view, free text callouts, and more. Illustration: Tips for Designing an Android Library DEVELOPMENT Android Tips Development Tips for Designing an Android Library We take a look at some of the things you should keep in mind when designing an Android library. Illustration: Best PDF Viewer for Android: How to Create a PDF on Android TUTORIALS Android Kotlin How To PDF Best PDF Viewer for Android: How to Create a PDF on Android Discover the best PDF viewers for Android and learn how to create PDFs with different methods, from using built-in tools to integrating powerful libraries like PSPDFKit. Illustration: How to Embed Files Using File Annotations TUTORIALS iOS Android macOS How To How to Embed Files Using File Annotations We're taking a look at how to embed files using file annotations. Illustration: PSPDFKit 4.6 for Android PRODUCTS Android Releases PSPDFKit 4.6 for Android Introducing PSPDFKit 4.6 for Android — featuring annotation & page rotation, non-destructive image documents, system clipboard images, file annotations, custom page content and more. Illustration: Rendering PDF Previews DEVELOPMENT Android Insights Development Rendering PDF Previews An overview of how to render PDF previews. Illustration: Async Stacktraces in Android Studio DEVELOPMENT Android Java Kotlin Tips Development Async Stacktraces in Android Studio How to create asynchronous stacktraces in Android Studio and IntelliJ. Illustration: RxJava Is Async yet Blocking DEVELOPMENT Android RxJava Kotlin Insights Development RxJava Is Async yet Blocking An explanation of why RxJava is both asynchronous and blocking. Illustration: The Subtle Art of Real-Time Debugging With Android Studio DEVELOPMENT Android Debugging Productivity Development The Subtle Art of Real-Time Debugging With Android Studio Debugging in real time with Android Studio. Illustration: Hints for Beginners Navigating Around New Code DEVELOPMENT Android Tips Development Hints for Beginners Navigating Around New Code We share some tips on how to navigate a new codebase. Illustration: Failable Methods with Djinni DEVELOPMENT iOS Android C++ Objective-C Development Failable Methods with Djinni In this article, we have look at using result types to model failable computations in the Djinni IDL. Illustration: Using Kotlin to Make the PSPDFKit API Even Better DEVELOPMENT Android Kotlin Insights Development Using Kotlin to Make the PSPDFKit API Even Better Kotlin provides the ability to extend any class with new functionality, and we can use this to expand the PSPDFKit API. Illustration: PSPDFKit 4.4 for Android PRODUCTS Android Releases PSPDFKit 4.4 for Android Today we're releasing PSPDFKit 4.4 for Android! Illustration: React Native UI Component for Android PRODUCTS Android React Native React Native UI Component for Android Introducing Android support for our native UI component for showing PDFs in a React Native app with PSPDFKit. Illustration: Rendering PDFs on Android DEVELOPMENT Android Performance UI/UX Development Rendering PDFs on Android How to handle rendering large amounts of bitmaps and maintain a slick UX while doing it. Illustration: Localization at PSPDFKit PRODUCTS Android iOS Localization at PSPDFKit An overview of how localization is handled at PSPDFKit. Illustration: Android Studio Shortcuts: How to Boost Your Productivity DEVELOPMENT Android Productivity Tips Development Android Studio Shortcuts: How to Boost Your Productivity The best shortcuts for Android Studio. The most famous and the most underrated. Illustration: PSPDFKit 4.3 for Android PRODUCTS Android Releases PSPDFKit 4.3 for Android Today we're releasing PSPDFKit 4.3 for Android! Illustration: Simple Kotlin Tips for Beginners DEVELOPMENT Android Kotlin Insights Development Simple Kotlin Tips for Beginners Useful tricks for beginners to start writing better code with Kotlin.

2017

Illustration: Use Vector Stamps Instead of Blurry Shapes TUTORIALS iOS Android How To Use Vector Stamps Instead of Blurry Shapes Tips and tricks for using vector-based stamp annotations. Illustration: PSPDFKit 4.1 for Android PRODUCTS Android Releases PSPDFKit 4.1 for Android Today we're releasing PSPDFKit 4.1 for Android! Illustration: Make Android Animations Reactive with VanGogh DEVELOPMENT Android RxJava Open Source Development Make Android Animations Reactive with VanGogh Android view animations powered by RxJava 2. Illustration: PSPDFKit 4.0 for Android PRODUCTS Android Releases PSPDFKit 4.0 for Android Today we're releasing PSPDFKit 4.0 for Android! Illustration: Secure Media Playback on Android DEVELOPMENT Android Kotlin Java Security Development Secure Media Playback on Android Picking smart defaults with security in mind when playing videos on Android. Illustration: PSPDFKit 3.3 for Android PRODUCTS Android Releases PSPDFKit 3.3 for Android Today we're releasing PSPDFKit 3.3 for Android! Illustration: PSPDFKit 3.2 for Android PRODUCTS Android Releases PSPDFKit 3.2 for Android Today we're releasing PSPDFKit 3.2 for Android! With a new night mode and scrolling settings, improved search and video annotation support. Illustration: 50 Shaders of Android: Drawing on Canvas DEVELOPMENT Android Java UI/UX Development 50 Shaders of Android: Drawing on Canvas Low-level drawing and animation on Android using Canvas and powerful Shader classes. Illustration: PSPDFKit 3.1 for Android PRODUCTS Android Releases PSPDFKit 3.1 for Android Today we're releasing PSPDFKit 3.1 for Android! Illustration: Creating Better User Experiences with Animations and Lottie DEVELOPMENT iOS Android Tips UI/UX Development Creating Better User Experiences with Animations and Lottie Improving an app’s User Experience made easy by adding animations powered by Lottie. Illustration: PSPDFKit 3.0 for Android PRODUCTS Android Releases PSPDFKit 3.0 for Android Today we're releasing PSPDFKit 3.0 for Android! Illustration: Writing Concise Code with Kotlin and RxJava DEVELOPMENT Android Kotlin RxJava Tips Development Writing Concise Code with Kotlin and RxJava Tips and tricks how to write readable, concise, and beautiful code using the Kotlin language and RxJava. Illustration: How to Fix a Bug, Blindfolded. DEVELOPMENT Android Tips Debugging Development How to Fix a Bug, Blindfolded. This is a story about fixing a bug, even when all the tools go kaput. Illustration: PSPDFKit 2.9 for Android PRODUCTS Android Releases PSPDFKit 2.9 for Android Today we're releasing PSPDFKit 2.9 for Android! Illustration: Super Fast Builds Using distcc DEVELOPMENT Android iOS Objective-C C++ Development Super Fast Builds Using distcc How to dramatically shorten your build times with distcc.

2016

Illustration: PSPDFKit 2.8 for Android PRODUCTS Android Releases PSPDFKit 2.8 for Android Today we're releasing PSPDFKit 2.8 for Android! Illustration: A clean status bar with Android System UI and QuickDemo DEVELOPMENT Android Kotlin Java Tips Development A clean status bar with Android System UI and QuickDemo How to enable Android's demo mode using a quick setting tile Illustration: Restoring State in Android MVP Architecture DEVELOPMENT Android Java Kotlin Development Restoring State in Android MVP Architecture State restoration is an important part of the Android framework, but we might encounter problems with it when implementing MVP architecture. Illustration: PSPDFKit 2.7 for Android PRODUCTS Android Releases PSPDFKit 2.7 for Android Another month, another version of PSPDFKit for Android. Say hello to 2.7! Illustration: Running Tests with Clang's AddressSanitizer DEVELOPMENT iOS Android Testing Development Running Tests with Clang's AddressSanitizer Clang has powerful sanitizers that are incredibly useful, so we collected our experiences using them between iOS, Android, and our C++ core to help you through some gotchas. Illustration: Android animations powered by RxJava DEVELOPMENT Android Kotlin RxJava Tips Development Android animations powered by RxJava The purpose of this post is to show you how to combine RxJava features with animations on Android to create a great user interface without a lot of nested code. Illustration: PSPDFKit 2.6 for Android PRODUCTS Android Releases PSPDFKit 2.6 for Android PSPDFKit continues its saga on Android with the 2.6 release and a host of new features and improvements! Check out this post to learn about the updated features. Illustration: PSPDFKit 2.5 for Android PRODUCTS Android Releases PSPDFKit 2.5 for Android The PSPDFKit Android team has been working hard to bring you the newest release 2.5 of PSPDFKit for Android! Check out this post to learn about the updated features. Illustration: How to build a screen reader TUTORIALS Android Java How To How to build a screen reader Illustration: PSPDFKit 2.4 for Android PRODUCTS Android Releases PSPDFKit 2.4 for Android Illustration: Keyboard Handling on Android DEVELOPMENT Android Java UI/UX Tips Development Keyboard Handling on Android Illustration: Kotlin-Ready Online Guides DEVELOPMENT Android Kotlin Development Kotlin-Ready Online Guides Our Guides received a large update – now with Kotlin usage examples. Illustration: PSPDFKit 2.2 for Android PRODUCTS Android Releases PSPDFKit 2.2 for Android Illustration: The curious case of Android premultiplied alpha DEVELOPMENT Android Insights Development The curious case of Android premultiplied alpha Illustration: PSPDFKit 2.1 for Android PRODUCTS Android Releases PSPDFKit 2.1 for Android

2015