Appearance
Java SDK
T3 网络验证 Java SDK,纯 JDK 标准库实现,兼容 Java 8+ 和 Android。
适用场景
- Java 桌面应用 / Android 应用
- 适用于 JDK 8+
包管理器安装
Maven
xml
<dependency>
<groupId>com.t3yanzheng</groupId>
<artifactId>t3-verify-sdk</artifactId>
<version>1.0.0</version>
</dependency>Gradle
groovy
implementation 'com.t3yanzheng:t3-verify-sdk:1.0.0'java
import com.t3yanzheng.sdk.T3Verify;手动下载
无额外依赖
SDK 仅使用 JDK 标准库,无需引入任何第三方库。
初始化
方式一:Base64 自定义编码集
java
T3Verify verify = new T3Verify();
verify.init(
"你的单码登录调用码",
"你的公告调用码",
"你的版本号调用码",
"你的心跳调用码",
"你的程序APPKEY",
"你的Base64自定义编码集"
);方式二:RSA 算法 + HEX 编码 推荐
java
T3Verify verify = new T3Verify();
verify.initRsa(
"你的单码登录调用码", // loginCode
"你的公告调用码", // noticeCode
"你的版本号调用码", // versionCode
"你的心跳调用码", // heartbeatCode
"你的程序APPKEY", // appkey
"-----BEGIN PUBLIC KEY-----\n" +
"你的RSA公钥\n" +
"-----END PUBLIC KEY-----"
);后台配置
使用 SDK 前,请先完成 后台快速配置。您也可以在后台「SDK 下载与注入」页面一键自动配置并下载已注入配置信息的 SDK,无需手动填写。
返回值类型
Java SDK 使用强类型返回值:
| 类型 | 用途 | 字段 |
|---|---|---|
T3Verify.T3Result | 通用结果 | success, msg, error |
T3Verify.T3NoticeResult | 公告 | 继承 T3Result + notice |
T3Verify.T3VersionResult | 版本号 | 继承 T3Result + version |
T3Verify.T3LoginResult | 登录 | 继承 T3Result + id, endTime, statecode |
推荐调用顺序
API 方法参考
获取机器码
java
String machineCode = T3Verify.getMachineCode();获取程序公告 getNotice()
java
T3Verify.T3NoticeResult result = verify.getNotice();
if (result.success) {
System.out.println("公告: " + result.notice);
}获取最新版本号 getLatestVersion()
java
T3Verify.T3VersionResult result = verify.getLatestVersion();
if (result.success) {
System.out.println("最新版本: " + result.version);
}单码卡密登录 login(kami, imei)
java
T3Verify.T3LoginResult result = verify.login(card, machineCode);
if (result.success) {
System.out.println("到期时间: " + result.endTime);
String statecode = result.statecode; // 保存用于心跳
}参数:
| 参数 | 类型 | 说明 |
|---|---|---|
kami | String | 卡密值 |
imei | String | 机器码 |
单码心跳验证 heartbeat(kami, statecode)
java
T3Verify.T3Result result = verify.heartbeat(card, statecode);
if (result.success) {
System.out.println("心跳验证成功");
}检查更新 checkUpdate(ver)
java
T3Verify.T3UpdateResult result = verify.checkUpdate("1000");
if (result.success) {
if (result.hasUpdate) {
System.out.println("最新版本: " + result.ver);
System.out.println("更新公告: " + result.uplog);
System.out.println("下载地址: " + result.upurl);
}
}查询卡密信息 queryKami(kami)
java
T3Verify.T3QueryResult result = verify.queryKami(card);
if (result.success) {
System.out.println("到期时间: " + result.endTime);
System.out.println("剩余时间: " + result.available + "秒");
}用户注册 userRegister(user, password, email)
java
T3Verify.T3Result result = verify.userRegister("username", "password", "email@example.com");
if (result.success) {
System.out.println("注册成功");
}用户登录 userLogin(user, password, imei)
java
T3Verify.T3LoginResult result = verify.userLogin("username", "password", machineCode);
if (result.success) {
System.out.println("到期时间: " + result.endTime);
String userStatecode = result.statecode;
}用户心跳验证 userHeartbeat(user, password, statecode)
java
T3Verify.T3Result result = verify.userHeartbeat("username", "password", userStatecode);用户充值 recharge(user, card)
java
T3Verify.T3Result result = verify.recharge("username", "recharge_card");用户绑定QQ bindQQ(user, password, openid, accessToken)
java
T3Verify.T3Result result = verify.bindQQ("username", "password", "openid", "access_token");用户QQ登录 qqLogin(openid, accessToken)
java
T3Verify.T3LoginResult result = verify.qqLogin("openid", "access_token");
if (result.success) {
System.out.println("到期时间: " + result.endTime);
}解绑设备 unbindKami / unbindUser
java
// 单码解绑
T3Verify.T3Result result = verify.unbindKami(card, machineCode);
if (result.success) System.out.println(" " + result.msg);
else System.out.println(" 失败: " + result.error);
// 用户解绑
T3Verify.T3Result result2 = verify.unbindUser("username", "password", machineCode);
if (result2.success) System.out.println(" " + result2.msg);
else System.out.println(" 失败: " + result2.error);IP 解绑 ipUnbindKami / ipUnbindUser
java
// 单码 IP 解绑
T3Verify.T3Result result = verify.ipUnbindKami(card);
if (result.success) System.out.println(" " + result.msg);
else System.out.println(" 失败: " + result.error);
// 用户 IP 解绑
T3Verify.T3Result result2 = verify.ipUnbindUser("username", "password");
if (result2.success) System.out.println(" " + result2.msg);
else System.out.println(" 失败: " + result2.error);获取远程变量 getVariableByKami / getVariableByUser
java
// 通过卡密获取
T3Verify.T3VariableResult result = verify.getVariableByKami(card, "变量ID", "变量名称");
if (result.success) System.out.println("变量值: " + result.value);
else System.out.println("失败: " + result.error);
// 通过用户获取
T3Verify.T3VariableResult result2 = verify.getVariableByUser("username", "password", "变量ID", "变量名称");
if (result2.success) System.out.println("变量值: " + result2.value);
else System.out.println("失败: " + result2.error);修改远程变量 modifyVariableByKami / modifyVariableByUser
java
// 通过卡密修改
T3Verify.T3Result result = verify.modifyVariableByKami(card, "变量ID", "新内容");
if (result.success) System.out.println(" " + result.msg);
else System.out.println(" 失败: " + result.error);
// 通过用户修改
T3Verify.T3Result result2 = verify.modifyVariableByUser("username", "password", "变量ID", "新内容");
if (result2.success) System.out.println(" " + result2.msg);
else System.out.println(" 失败: " + result2.error);修改核心数据 modifyCoreByKami / modifyCoreByUser
java
// 通过卡密修改
T3Verify.T3Result result = verify.modifyCoreByKami(card, "核心数据");
if (result.success) System.out.println(" " + result.msg);
else System.out.println(" 失败: " + result.error);
// 通过用户修改
T3Verify.T3Result result2 = verify.modifyCoreByUser("username", "password", "核心数据");
if (result2.success) System.out.println(" " + result2.msg);
else System.out.println(" 失败: " + result2.error);获取核心数据 getCoreByKami / getCoreByUser
java
// 通过卡密获取
T3Verify.T3CoreResult core1 = verify.getCoreByKami(card);
if (core1.success) System.out.println("核心数据: " + core1.core);
// 通过用户获取
T3Verify.T3CoreResult core2 = verify.getCoreByUser("username", "password");
if (core2.success) System.out.println("核心数据: " + core2.core);返回值:T3CoreResult
| 字段 | 类型 | 说明 |
|---|---|---|
success | boolean | 是否成功 |
core | String | 核心数据内容 |
error | String | 错误信息 |
获取在线数量 getOnlineKamiCount / getOnlineUserCount
java
// 获取在线卡密数量
T3Verify.T3OnlineResult ok = verify.getOnlineKamiCount();
if (ok.success) System.out.println("在线卡密数: " + ok.count);
// 获取在线用户数量
T3Verify.T3OnlineResult ou = verify.getOnlineUserCount();
if (ou.success) System.out.println("在线用户数: " + ou.count);返回值:T3OnlineResult
| 字段 | 类型 | 说明 |
|---|---|---|
success | boolean | 是否成功 |
count | int | 在线数量 |
error | String | 错误信息 |
获取云文档 getCloudDoc(token)
java
T3Verify.T3CloudDocResult result = verify.getCloudDoc("云文档Token");
if (result.success) {
System.out.println("内容: " + result.content);
}应用签名比对 appSign(autograph)
java
T3Verify.T3AppSignResult result = verify.appSign("应用签名");
if (result.success) {
System.out.println(" " + result.msg);
System.out.println(" 后台签名: " + result.autograph);
} else {
System.out.println(" 失败: " + result.error);
}用户修改密码 changePassword(user, oldpass, newpass)
java
T3Verify.T3Result result = verify.changePassword("username", "旧密码", "新密码");禁用 disableKami / disableUser
java
// 禁用卡密
T3Verify.T3Result result = verify.disableKami(card);
if (result.success) System.out.println(" " + result.msg);
else System.out.println(" 失败: " + result.error);
// 禁用用户
T3Verify.T3Result result2 = verify.disableUser("username", "password");
if (result2.success) System.out.println(" " + result2.msg);
else System.out.println(" 失败: " + result2.error);用户注销 userCancel(user, password)
java
T3Verify.T3Result result = verify.userCancel("username", "password");完整示例
java
public class Main {
public static void main(String[] args) {
T3Verify verify = new T3Verify();
// 初始化(RSA 模式)
verify.initRsa(
"F2FA89AD46C050B2",
"3512425FE75AE73A",
"F119CF1323743DBC",
"B1D2263C3702177F",
"5d116108006a454d538839ccff2d32f9",
"-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----"
);
String card = "你的卡密";
String machineCode = T3Verify.getMachineCode();
// 1. 获取公告
T3Verify.T3NoticeResult notice = verify.getNotice();
if (notice.success) System.out.println("公告: " + notice.notice);
// 2. 获取版本号
T3Verify.T3VersionResult ver = verify.getLatestVersion();
if (ver.success) System.out.println("最新版本: " + ver.version);
// 3. 单码登录
T3Verify.T3LoginResult login = verify.login(card, machineCode);
if (login.success) {
System.out.println("到期时间: " + login.endTime);
// 4. 心跳验证
T3Verify.T3Result hb = verify.heartbeat(card, login.statecode);
if (hb.success) System.out.println("心跳验证成功");
}
}
}编译运行
bash
# 编译
javac T3Verify.java Main.java
# 运行
java Main