The Licensing Client (C++)
Last updated
Was this helpful?
Last updated
Was this helpful?
The ZentitleLicensingClient
C++ SDK provides a streamlined interface for integrating native applications with the Zentitle2 Licensing API. It simplifies implementation by abstracting away the complexity of managing license states, persistence, and API communication.
The SDK offers two primary ways to integrate Zentitle2 licensing features into your system:
The recommended approach is to use the IActivation
The Zentitle2 license is represented within your application by the interface and its implementations. This interface automatically manages the license state, handles data persistence locally in a secure and optimized way, minimizes the number of API calls by caching and managing state transitions internally, and provides a consistent API for key operations such as activation, refresh, deactivation, and offline handling. By relying on this abstraction, developers can access all licensing features without worrying about lower-level concerns like persistence or error handling.
Alternatively, you can use the lower-level API client directly via the ActivationImpl
class provides a strongly typed, error-aware interface to the Zentitle2 Licensing API endpoints. However, this approach is more complex and not recommended in most cases, as it requires the developer to implement logic for managing local license state, error handling, transitions between license states (such as active or expired), and other tasks automatically covered by the IActivation
abstraction.
⚠️ Note: This method requires you to implement your own mechanisms like, internal caching, smart refresh mechanisms and asynchronous operations. It is more error-prone and should only be used if you have very specific integration needs.
You can integrate the SDK by copying the source code directly into your project. This approach compiles all components into statically linked libraries, which are then linked into a single target binary. This setup reduces the attack surface and prevents tampering with external .dll
or .so
files. However, upgrading to newer SDK versions requires manually replacing the source files.
The project uses CMake for cross-platform builds. Although multiple static libraries are built internally, you only need to link your application against a single consolidated library target. Step-by-step compilation and integration instructions are provided in the included README.md
files.
You can find sample applications that use the C++ SDK in our .