1. 啟用客戶自助換機流程
將授權關聯客戶電子郵件,並依授權策略允許客戶自行釋放裝置。在應用程式的授權畫面或支援說明提供客戶入口。
客戶以一次性電子郵件登入連結進入。開啟登入連結不會解除裝置綁定;必須選擇舊裝置並明確確認換機。
2. 在客戶入口釋放舊裝置
- 開啟客戶入口,以授權關聯的電子郵件登入。
- 選擇舊裝置並確認「解除綁定並換機」。
- 複製顯示的一次性啟用碼,有效時間最長 15 分鐘,也可選擇透過電子郵件傳送。
- 在新電腦將臨時碼貼入原有授權金鑰輸入欄位。
3. 沿用既有 SDK 啟用介面
無須另行實作換機 HTTP 用戶端。九種 SDK 的一般啟動方法皆接受 lv_tmp_ 臨時碼。以下 Go 片段放入應用程式回傳 error 的啟動或業務函式。
// Use this for the customer's ordinary key or lv_tmp_ transfer code.
// Leave activationInput empty on later starts to restore the saved credential.
client, err := licentivo.OpenWithLicense(ctx, "product.json", activationInput,
func(err error) { log.Printf("License refresh: %v", err) })
if err != nil {
return err
}
defer client.Close()
return client.RunFeature("export", exportReport)4. 保留原授權權益
成功啟用後儲存綁定本機的憑證。臨時碼之後到期,不會使已啟用裝置失效。往後啟動可傳入空金鑰恢復憑證。
原首次啟用時間、到期時間、維護權益、功能、已用次數與歸屬均保持不變。換機不是重新購買,也不會重設使用次數。
兌換失敗不消耗臨時碼。請求中斷後保留 SDK 原狀態重試,以恢復結果。未使用但到期的臨時碼可從原釋放裝置紀錄重發;已使用的碼不能從舊紀錄再次發放。
5. 移轉到完全離線的新裝置
策略允許裝置綁定離線啟用時,新裝置可用臨時碼產生離線申請,在臨時碼到期前帶到客戶入口取得核准回應,再帶回該新裝置匯入。
舊裝置下次連線檢查時才會得知遠端解除綁定。仍有效的離線快取可能繼續依簽章範圍使用,直到連線或到期。永久離線快取無法立即得知撤銷,授權策略與客戶說明應反映此限制。
6. 驗證與問題排查
- 確認客戶入口需要授權關聯的電子郵件及明確釋放確認。
- 在另一台測試電腦以臨時碼啟用,再以空金鑰重新啟動。
- 確認原到期時間與功能已用次數均未改變。
- 臨時碼到期時,從未使用的釋放紀錄重發;若已使用,查看新裝置而非重複使用舊碼。
- 區分一般裝置綁定 Close 與客戶主動換機 Deactivate。一般結束不應釋放客戶註冊。