跳到正文

客戶端 SDK

將業務函數交給 SDK:普通功能用 RunFeature,計次功能用 RunMeteredFeature。請求、驗證簽章、快取和心跳由 SDK 處理。

Go SDK · Java · C · C++ · C# / .NET · Python · JavaScript · Rust · Ruby

Where do initialization arguments come from?

在控制台「產品」複製產品 ID,點擊同一產品的「簽章公鑰」,將每一組金鑰 ID、公鑰填入初始化程式碼,取代 YOUR_PRODUCT_ID、YOUR_KEY_ID 和 YOUR_PUBLIC_KEY。快速接入也可直接複製已填好的程式碼。無需設定檔;SDK 預設連線至 https://www.licentivo.com。

將 SDK 初始化接到自己軟體的啟動或啟用入口,從啟用視窗讀取客戶授權碼,傳入產品 ID、信任公鑰並保持用戶端存活。將 RunFeature 放在實際業務入口,以自己的功能取代匯出範例函式。

Install the SDK

在自己的應用程式項目中安裝固定版本。切換上方語言,可查看對應平臺的安裝命令;安裝公開 SDK 不需要廠商管理 API Key。

· 查看已發布版本

安裝命令或項目依賴

版本:

安裝之后如何引用?
語言項目串接
Goimport licentivo "github.com/spf86/licentivo-sdk"
Javaimport licentivo.Client;
C / C++find_package(Licentivo 0.11 REQUIRED) · target_link_libraries(MyApp PRIVATE Licentivo::C) / Licentivo::CPP
C#using Licentivo;
Pythonfrom licentivo import Client
Node.jsimport {Client} from '@licentivo/sdk'
Rustuse licentivo::Client;
Rubyrequire 'licentivo'

用 SDK 執行受保護的業務,退出時關閉 client。

Go · 客戶端授權
Loading code…

按 AI 接入流程完成自己的軟體授權 →

如何顯示授權狀態?

Status 和 FeatureStatus 只讀本機狀態,不傳送請求,也不等待管理後台網路驗證。狀態變化通知可以用來刷新界面。

狀態含義
active最近一次聯網驗證成功,本機授權有效。
offline_valid本機簽章仍有效,啟動后的聯網確認尚未成功。
verification_required沒有可用簽章,需要啟用或聯網刷新。
expired / revoked / released伺服器明確拒絕授權,應停止受保護操作。
quota_exhausted這次功能計次超出額度,其他已授權功能仍可用。

allowed 表示本機授權是否有效;按次數的功能仍需請求額度。lease_valid_until 是簽章快取截止時間,不是授權最終到期時間。code、request_id 和 retryable 分別說明錯誤、日志編號和能否重試。

各語言的方法名、通知回調和安裝包用法見下載包的 sdk/README.md。上方按語言列出包管理器安裝命令;官網同時提供版本安裝包、統一安裝器與離線安裝方式。

接到實際應用程式時,放在哪些位置?

應用程式中的位置要做的事
啟動或使用者輸入授權碼后呼叫 OpenWithLicense(C++ 使用構造函數和 Start),SDK 完成啟用并按策略開啟心跳
使用付費功能前呼叫 RunFeature,把業務函數交給 SDK;計次功能使用 RunMeteredFeature
應用程式執行期間保持 client 存活,SDK 按策略中的間隔傳送心跳
應用程式退出時Close / Dispose / Destroy,停止心跳;浮動授權歸還席位,綁定裝置授權保留裝置登記
使用者主動解除綁定時呼叫 Deactivate,再關閉 client

表中的名稱表示對應操作,不同語言的實際方法名以示例為準。心跳、離線快取和聯網刷新的詳細行為見 心跳與離線設定中查看。