Get started

Interactive Ink SDK makes it easy to get started. This page helps you set up a development environment, get a certificate and play with provided example applications.

Setting up a development environment

To develop with iink SDK for Android, you will need:

Example applications

MyScript iink SDK comes with example applications illustrating how to use key APIs.

The code is available on GitHub.

A custom compilation step will download the minimal set of recognition assets required for the example to run. More assets (e.g. to support other recognition languages) can be downloaded from MyScript Developer Portal.

A reference implementation for the platform-specific integration layer can be found alongside the examples. It covers aspects such as rendering that the low-level iink SDK does not provide out-of-the-box for flexibility and portability reasons.

The source code of both the examples and the reference implementation is released under the Apache 2.0 license. You can reuse it into your own projects without any particular restriction.

Getting a certificate

A certificate is a binary “key” provided by MyScript that is required to enable iink SDK in an application:

  • If you have just registered with MyScript Developer Portal, you should have received a certificate by mail that will let you run the provided get started example.
  • If not - or to activate iink SDK with your own applications - please follow the on-device license management instructions.
Developer Portal certificates are specifically generated for each app identifier. You cannot directly reuse the “get started” certificate inside your own application.

The certificate comes embedded in a source file that you should include in your project:

  • MyScript-provided examples expect it to be located at a specific location (see instructions below).
  • For your own application, you can place it where you want, provided that it is accessible to instantiate the iink runtime.

More details on certificates and license management can be found in the dedicated support section.

Playing with the Get started example

The Get started example is the easiest way for a first contact with iink SDK APIs.

To run it, just follow the following instructions:

Step 1: Clone the MyScript Git repository containing the examples for the Android platform and navigate to the root of the folder containing the applications:

git clone
cd interactive-ink-examples-android

Step 2: Replace the file in the GetStarted/src/main/java/com/myscript/certificate directory with your certificate.

Step 3: Open the interactive-ink-examples-android directory as an existing Android Studio project. The Gradle dependencies should be grabbed and the project should compile with success.

If you encounter build errors of the form No version of NDK matched the requested version, please install the requested NDK version or update the one referenced in build.gradle to match your installed NDK version. You can follow these instructions.

Step 4: Run the GetStarted target.

Building your first interactive ink application

To guide you through the fundamentals of Interactive Ink SDK, let’s imagine that you want to build a (very) simple handwriting calculator. This guide explains some key concepts and provides you with the code portions that are relevant for a simple iink SDK integration.

As most iink APIs are independent from the type of content you manipulate (text, math, diagram, etc.), the code can be easily adapted to other use cases.

For the sake of this example, such an application would provide the end user with:

  • a writing area to write computations,
  • buttons to undo, redo, and clear the canvas,
  • a validation button to convert content to typeset form and do the calculation,
  • a history of the past calculations,
  • persistence across sessions,
  • some custom styling over what iink SDK provides by default.
This guide assumes that all the iink-related code is part of a single Calculator class.

The guide consists of the following steps:

  1. Interactive Ink runtime
  2. Storage
  3. Rendering
  4. Editing
  5. Conversion
  6. Import and export
  7. Zooming and scrolling
  8. Styling
  9. Error management
While introducing the different concepts one-by-one in a logical manner, this guide is written in a way that allows you to refer to a particular aspect at any time, even if you don’t strictly follow the intended order.

Ready? Let’s start!

We use cookies to ensure that we give you the best experience on our website Read the privacy policy