SDK cliente
Entrega tu función al SDK: RunFeature para permisos, RunMeteredFeature para contadores. El SDK gestiona solicitudes, firmas, caché y latidos.
Go SDK · Java · C · C++ · C# / .NET · Python · JavaScript · Rust · Ruby
Where do initialization arguments come from?
Copia el ID del producto en Consola > Productos. Abre las claves públicas de firma del mismo producto y pega todos los pares ID de clave/clave pública en el código de inicialización, sustituyendo YOUR_PRODUCT_ID, YOUR_KEY_ID y YOUR_PUBLIC_KEY. La integración rápida puede generar este código. No hace falta un archivo de configuración; el SDK usa https://www.licentivo.com de forma predeterminada.
Inicializa el SDK al iniciar o activar tu programa. Lee la clave del cliente en el formulario y pasa el ID del producto y las claves de confianza. Mantén el cliente hasta cerrar. Coloca RunFeature en la operación real y sustituye la exportación por tu propia función.
Install the SDK
Instala una versión fija en tu proyecto. Selecciona arriba el lenguaje para ver las instrucciones de su plataforma. La instalación del SDK público no requiere una clave API de administración del proveedor.
Versión:
Cómo referenciar el SDK instalado
| Idioma | Integración del proyecto |
|---|---|
| Go | import licentivo "github.com/spf86/licentivo-sdk" |
| Java | import licentivo.Client; |
| C / C++ | find_package(Licentivo 0.11 REQUIRED) · target_link_libraries(MyApp PRIVATE Licentivo::C) / Licentivo::CPP |
| C# | using Licentivo; |
| Python | from licentivo import Client |
| Node.js | import {Client} from '@licentivo/sdk' |
| Rust | use licentivo::Client; |
| Ruby | require 'licentivo' |
Ejecuta la operación protegida con el SDK y cierra client al salir.
Loading code…Connect initialization and feature checks to your software → · Integrate your own software with AI →
¿Cómo ejecuto el ejemplo de gestión?
Primero configura estas variables en el servidor LICENTIVO_URL y LICENTIVO_API_KEY, indica la URL del servidor de licencias y la Key de gestión completa. El ejemplo obtiene los productos y muestra el estado HTTP y la respuesta.
Devuelve HTTP 200 con data.items, la petición se completó. Con 401, comprueba si la Key está completa, caducada o revocada. Su creación y permisos se explican en Clave API de gestión.
Follow the AI workflow to license your own software →
¿Cómo mostrar el estado de autorización?
Status y FeatureStatus leen localmente sin solicitudes ni esperar la verificación. Usa avisos de estado para actualizar la interfaz.
| Estado | Significado |
|---|---|
active | La última verificación online fue correcta; la autorización local es válida. |
offline_valid | La firma local es válida; aún no se ha confirmado online desde el inicio. |
verification_required | No hay una firma utilizable. Activa o actualiza online. |
| expired / revoked / released | El servidor denegó la autorización expresamente. Detén las operaciones protegidas. |
quota_exhausted | Esta solicitud superó su cupo; las demás funciones autorizadas siguen disponibles. |
allowed indica validez local; las funciones medidas siguen solicitando unidades. lease_valid_until es el plazo de la caché firmada, no del final de la licencia. code, request_id y retryable indican error, referencia del registro y posibilidad de reintento.
Consulta sdk/README.md en la descarga para conocer los métodos, callbacks y uso de paquetes de cada lenguaje. Arriba se indica la instalación con gestores de paquetes por lenguaje. El sitio web también ofrece paquetes versionados, instaladores comunes e instalación sin conexión.
¿Dónde va esto en tu aplicación?
| Etapa de la aplicación | Qué hacer |
|---|---|
| Al iniciar o introducir la clave | Llama a OpenWithLicense (constructor y Start en C++). El SDK activa e inicia heartbeats según la política. |
| Antes de funciones de pago | Pasa tu función a RunFeature; usa RunMeteredFeature para contadores |
| Durante la ejecución | Mantén client activo; el SDK envía heartbeats al intervalo de la política. |
| Al cerrar la aplicación | Close / Dispose / Destroy detiene heartbeats, devuelve puestos flotantes y conserva registros vinculados. |
| Cuando el usuario desvincula | Llama a Deactivate y cierra client. |
Los nombres indican operaciones; usa los métodos exactos de tu lenguaje. Para heartbeats, caché y actualización en línea, consulta Heartbeats y acceso sin conexión.