FairScan icon FairScan
/
Blog

FairScan can now be called from other apps

January 3, 2026

FairScan was designed to make document scanning very easy. It lets you decide what to do with the resulting PDF: you can store it on your device, or share it using any app installed on your phone that declares it can handle PDF files. With FairScan 1.9.0, the latest release as of today, FairScan also makes it possible for other apps to call it directly and receive a PDF in return.

Making apps cooperate

Android apps can cooperate and exchange data through a mechanism called intents. The most typical example is when an app lets you "share" some data such as a picture, a contact, or a document. The Android system then shows a list of apps that can receive it, and you choose the one you want.

An intent can also be used by an app to execute a task and get a result back, for example taking a picture or selecting a file. If several apps can handle the request, the system lets the user choose.

This same concept could apply to document scanning: apps that occasionally need a PDF could delegate the job to a specialized app. Since there are many document scanning apps, letting the user decide which one to use would make sense. However, I didn't find any standard intent for document scanning. I'm actually not aware of any scanning app that supports being called that way, either open source or closed source.

So FairScan now defines its own intent, and other apps are free to use it. Instead of reinventing a scanning feature that might not work as well as a dedicated tool, other apps can now delegate that task to FairScan and focus on what they do best.

Adapting FairScan

FairScan was initially designed as a standalone app, so I had to adapt it to ensure a smooth user experience when called by another app:

How it started

I wouldn't have built this feature without a message from Tenam Sobti, who not only suggested the idea but also provided a working prototype. Many thanks to Tenam! This is the kind of collaboration that make working in open source rewarding.

The initial goal was to allow the ODK Collect app to use FairScan. ODK Collect — as well as KoboCollect — is used by research teams and humanitarian organizations to gather data using customizable forms. Since these apps are flexible, they didn't need to change their code to use this feature: users can simply configure their forms to call FairScan (see this discussion).

Practical impact

Being able to call FairScan from another app is not revolutionary: users could already open FairScan, scan their document, and then import the PDF somewhere else. However, an intent-based workflow brings clear advantages:

Imagine a field worker filling a survey form offline for a research project, needing to attach a signed consent form. Instead of manually scanning it, saving it, switching apps and uploading it, the form app can now simply ask FairScan to scan the document and receive the PDF instantly.


This new FairScan feature could be useful for many types of applications: cloud storage, note-taking, document management… If you're building an app and want to try it, you'll find instructions in the FairScan repository on GitHub.

I'd love to hear about apps that make use of this feature: feel free to reach out!