跳到正文
LICENTIVO / INTEGRATION

让客户把软件授权转移到新电脑

通过客户门户释放旧设备,并取得临时激活码。新设备沿用原许可证的到期时间、功能权益和已用次数。

客户流程 · 九种 SDK 通用更新日期

1. 开启客户自助换机流程

将许可证关联客户邮箱,并按授权策略允许客户自助释放设备。在应用授权界面或支持说明中提供客户门户入口。

客户用一次性邮箱登录链接进入门户。打开登录链接不会解绑设备,必须选择旧设备并明确确认换机。

2. 在客户门户释放旧设备

  1. 打开客户门户,使用许可证关联邮箱登录。
  2. 选择旧设备,确认“解绑并换机”。
  3. 复制门户展示的一次性激活码,有效期最长 15 分钟,也可以选择通过邮件发送。
  4. 在新电脑把临时码粘贴到原有授权码输入框。

3. 沿用现有 SDK 激活接口

无需单独实现换机 HTTP 客户端。九种 SDK 的正常启动方法都接受 lv_tmp_ 临时码。下面 Go 片段放在应用返回 error 的启动或业务函数中。

Go · 原有激活流程
// 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. 验证与问题排查

  1. 确认门户需要许可证关联邮箱及明确释放确认。
  2. 在另一台测试电脑用临时码激活,随后用空授权码重启。
  3. 确认原到期时间和功能已用次数没有改变。
  4. 临时码过期时,从未使用的释放记录重新发放;已使用则查看新设备,不要重复使用旧码。
  5. 区分普通设备绑定 Close 和客户主动换机 Deactivate,普通退出不应释放客户注册。