© 2020 Sharada Business Solutions Private Limited. All Rights Reserved
Limit Risk with the Right SDK
When creating a pen-enabled application, developers should first consider whether they would like to utilize external resources in the development process, or if they would like to handle the development internally. If they decide to make use of external resources, they may then need to consider the use of a digital ink SDK.
Evaluating and selecting the right digital ink SDK ensures the success of any pen-enabled application. The right SDK enables developer teams to collaborate more effectively and enhances the quality of the end product. Choosing the wrong SDK, however, can hinder the development process, add complexities to the end user experience, create security vulnerabilities, increase app crashes, and more.
Developing an app with these kinds of issues can severely impact business growth. In fact, nearly two-thirds of developers acknowledge that they have found out about undetected software errors directly from end users of the app. Worse yet, many find out about app errors through social media (25%), media coverage (17%), or even directly from the CEO (21%). These errors can damage a company’s reputation, anger investors, and frustrate end users.
That’s why choosing the right external resource to help with the development of an app is critical. Since many undetected software errors can happen after implementing an SDK, it’s important to choose a provider with comprehensive technology support that will ultimately become a great long-term partner.
When evaluating SDKs for digital ink app creation, there are many factors to consider. Some criteria developers should keep in mind include:
As the global leader in the pen display and tablet market, Wacom has spent decades developing products and apps with the most accurate, intuitive, and natural pen experience in the industry. After designing such digital ink apps and services as Inkspace, Bamboo Paper, and Wacom Notes, Wacom has observed certain key focus areas that developers should consider while evaluating potential digital ink SDKs. This guide digs into all the questions developers who are tasked with seeking out an SDK should ask in their selection process.
One of the main benefits of a well-built digital ink SDK is an improved user experience. SDKs should help developers ensure that their app is of the highest quality, works well with other apps, and has no errors or bugs before going to market. To achieve this, here are some key questions that developers should ask:
Digital ink SDKs should allow developers to include premium digital inking features in their applications with flexible, high-quality rendering and visual feedback. WILL SDK for ink achieves this by focusing on four key elements:
Increasingly, metadata is also being used for semantics, enabling meaning to be extracted from digital ink. Typically, this means linking words written using digital ink to related web-based information as they are created and stored within the property storage or the built-in Triplestore. WILL also defines its own semantic metadata for ink.
While other SDKs may store the sensor data and biometrics in the strokes, WILL separates the data. The device supplies the data to the OS, and then WILL stores the transformed data it receives from the OS. This ensures that the device determines data accuracy. In addition to the pen-sensor data, contextual data, such as the date and time the ink was created, is collected and stored with the ink. This includes:
Digital ink SDKs may vary slightly in the functionalities they provide for developers. If you are building remote-related apps, SDKs that offer motion gesture recognition are useful. SDKs offering the use of gyroscope and accelerometer sensors, which provide moving coordinates to the phone, allow developers to use these coordinates and implement them into their apps.
Some SDKs have more specific use cases than others. Some focus on helping to develop apps that help with note-taking and calculations, others may offer APIs that offer unique features to benefit a specific use case, such as the support of handwriting recognition for equations and offers advanced math support.
Digital ink SDKs should offer key features for developers to be able to provide end users with an optimal experience. WILL SDK for ink provides access to these features:
Another top consideration should be the ease with which a potential pen SDK integrates with the components of an app. SDKs should be able to quickly and smoothly integrate with the app so as to not distract from the user experience. A poorly-integrated digital ink SDK can lead to a host of problems, including app bloat, instability, shortened battery life, data leakage, and more. To avoid those potential pitfalls, here are some questions to consider:
SDKs should be able to easily integrate with the environment a developer is already working in. For example, an SDK that uses a static Java library may depend on internal Android framework modules. That means that this package only runs on devices that support those modules, so developers would also need to be working in that environment.
Integrating an SDK should be intuitive with minimal need for support. The SDK should also come with comprehensive documentation to aid in the integration process. WILL SDK for ink comes with detailed technical information to support developers.
SDKs need to be able to support whatever platform the developer is working in. Many SDKs are supported on either iOS or Android or another single specific platform. WILL SDK for ink integrates with iOS, Android, Windows UWP, Windows WPF and Web.
SDKs should integrate well with mobile platforms; they should never limit mobile adoption but rather accelerate it.
Before adopting a digital ink SDK, developers should evaluate the level of support that the kit provides. Additionally, they should consider how compatible the kit is with their team’s abilities. Thinking about the following questions can help ensure a potential digital ink technology is a good fit:
Developers should take a look at the different components of the SDK, including the API, documentation, libraries, sample graphics and code, and more. By analyzing these elements and comparing them to their own particular skill set, they should be able to gauge how well they’d be able to implement the SDK.
The developer should also evaluate whether the SDK is more customizable or has plug-and-play readiness. Customizable SDKs may take more skill to be able to tailor to the developer’s end goals. Plug-and-play SDKs generally require less of a skill set required to implement.
An API is included in most SDKs to help integrate with the rest of your code. Some will include a higher-level graphics API, and some will include a lower level. Lower-level graphics API provides the developer with more control but may add more complexity. The WILL SDK for ink uses a lower-level graphics API.
It’s helpful if the SDK offers a community blog or forum of some sort to connect developers who are using the same SDK. Forums where developers can ask and answer each other’s technical questions do not only provide a great resource for support, but also show a high level of engagement and use of the SDK.
The more detailed the instructions and sample code provided, the easier it will be for developers to implement. Code samples give developers example programs and libraries to help them build and optimize their apps more easily. WILL SDK for ink contains sample code snippets that are explained step-by-step for ink rendering, ink serialization, and ink manipulation.
Exploring some past examples of how this SDK has been used before can help developers determine if it’s the right fit for their app. Developers should consider:
Developers should keep in mind the use cases that their app will be supporting, and consider how the SDK they choose can support those use cases. WILL SDK for ink can be used for note-taking and drawing, digital education, form filling, multimodal input and creative rights management. These can be used across multiple verticals, including education, healthcare, financial services, retail, hospitality, and public sector.
Some SDKs allow end users to recognize handwritten text in hundreds of different languages. An API may transcribe handwritten notes and recognize hand-drawn shapes and emojis. Some SDKs offer use cases for apps that help with note-taking and calculations, while others support handwriting recognition for equations and offers advanced math support.
Developers should consider the specific industry pain points that their app will be positioned help to alleviate. For example, the Wacom Ink for Education bundle was designed to answer the common use cases and pain points currently found in software development for modern digital education. Due to the complex nature of current hybrid education programs, educators had been struggling to enable digital smart workflows that support digital handwriting. This bundle aims to help developers integrate digital ink capacities into their applications through access to WILL SDK for ink, free sample codes, and integration support service.
Developers need to know what types of data a pen enablement SDK will let into and out of their application. Here are a few questions they should ask to ensure an SDK satisfies security standards:
The format in which data is stored both within and outside of the application and the ways in which that data is transferred can affect its overall security and open itself up to potential vulnerabilities.
WILL SDK for ink’s underlying data model is the Universal Ink Model. This model defines a language-neutral, hardware- and platform-neutral data model for representing and manipulating digital ink data captured using an electronic pen or stylus, or using touch input.
Two of the most common types of data for digital ink are biometric and spline. Biometric data is information regarding user interaction with pen and tablet, such as contact pressure, tilt, and pen rotation. Spline data pertains to how user output is geometrically and visually rendered to show x and y coordinates, curve, and scale.
With WILL SDK for ink, spline and brush data are required. Storage of biometric data is optional. So, if developers don’t need information regarding user interaction with pen and tablet, they can omit that to save memory space.
Files with visual elements take up more space than text alone. WILL SDK for ink uses delta encoding to store and transmit data. Rather than saving new data updates separately, delta encoding only saves the differences between iterations in a data sequence.
Limit Risk with the Right SDK
A digital ink SDK can mean the difference between a market favorite or a flop. The right digital ink SDK should be able to help developers create an app with premium digital inking features, flexible high-quality rendering and visual feedback, unique drawing and manipulation features, and ultimately provide a superior end-user experience.
The SDK should also help to enhance developer productivity, streamline their process, and help them to alleviate many of the risks and challenges associated with building their app.
To reap these benefits, however, developers need to fulfill their due diligence in evaluating potential pen SDKs across all the key focus areas, from integration to use cases to storage. These criteria determine how well the pen SDK satisfies different developer teams’ needs and, ultimately, how it impacts the application’s success.
Get expert advice on selecting the best digital ink SDK for your application. Contact a Wacom technical representative in the form below or learn more on developer.wacom.com.