From 79084442523036fe324f7ca8c04d00b05640bc19 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Thu, 15 Jan 2026 15:39:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BA=94=E7=94=A8=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E7=B1=BB=E4=B8=8E=E8=BF=9E=E6=8E=A5=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=91=BD=E5=90=8D=E7=A9=BA=E9=97=B4=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- authcenterapp/build.properties | 4 +- .../activities/AuthTestActivity.java | 18 ++++---- .../manager/HeartbeatManager.java | 4 +- .../studio/authcenterapp/utils/AppUtils.java | 41 ++++++++++++------- library/build.properties | 4 +- .../model/HttpServerConnectionModel.java | 9 ++++ 6 files changed, 50 insertions(+), 30 deletions(-) rename library/src/main/java/cc/winboll/library/utils/ServerUtils.java => authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/utils/AppUtils.java (78%) create mode 100644 library/src/main/java/cc/winboll/library/model/HttpServerConnectionModel.java diff --git a/authcenterapp/build.properties b/authcenterapp/build.properties index 24ba676..75fd85f 100644 --- a/authcenterapp/build.properties +++ b/authcenterapp/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Thu Jan 15 06:52:22 GMT 2026 +#Thu Jan 15 07:38:30 GMT 2026 stageCount=0 libraryProject=library baseVersion=15.0 publishVersion=15.0.0 -buildCount=54 +buildCount=56 baseBetaVersion=15.0.1 diff --git a/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/activities/AuthTestActivity.java b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/activities/AuthTestActivity.java index 2eb5936..2d27d6b 100644 --- a/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/activities/AuthTestActivity.java +++ b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/activities/AuthTestActivity.java @@ -16,10 +16,10 @@ import cc.winboll.LogUtils; import cc.winboll.library.model.AuthDataModel; import cc.winboll.library.utils.AuthUtils; import cc.winboll.library.utils.NFCUtils; -import cc.winboll.library.utils.ServerUtils; import cc.winboll.studio.authcenterapp.R; import cc.winboll.studio.authcenterapp.activities.AuthTestActivity; import cc.winboll.studio.authcenterapp.manager.HeartbeatManager; +import cc.winboll.studio.authcenterapp.utils.AppUtils; import cc.winboll.studio.authcenterapp.utils.StorageUtils; import java.security.KeyPair; import java.security.PrivateKey; @@ -191,7 +191,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic } // 初始化服务器地址 - ServerUtils.initServerUrl(serverUrl); + AppUtils.initServerUrl(serverUrl); updateStatus("步骤1成功:邮箱+服务地址校验通过"); LogUtils.i(TAG, "testStep1CheckInput:步骤1执行成功,服务器地址已初始化"); } @@ -217,7 +217,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic } // 调用服务器接口发送验证码 - String result = ServerUtils.sendVerifyCode(email); + String result = AppUtils.sendVerifyCode(email); if (result != null && result.contains("success")) { updateStatus("步骤2成功:验证码已发送,请注意查收"); LogUtils.i(TAG, "testStep2SendVerifyCode:步骤2执行成功,验证码发送成功"); @@ -249,7 +249,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic } // 调用服务器接口校验验证码 - String result = ServerUtils.verifyCode(email, code); + String result = AppUtils.verifyCode(email, code); if (result != null && result.contains("success")) { updateStatus("步骤3成功:验证码校验通过"); LogUtils.i(TAG, "testStep3VerifyCode:步骤3执行成功,验证码校验通过"); @@ -336,7 +336,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic LogUtils.d(TAG, "testStep5SubmitPublicKey:入参-email=" + email + ",应用公钥已准备"); // 1. 提交应用公钥到服务器,获取加密PONG数据 - String encryptPong = ServerUtils.submitAppPublicKey(email, appPublicKeyStr); + String encryptPong = AppUtils.submitAppPublicKey(email, appPublicKeyStr); if (encryptPong == null) { updateStatus("步骤5失败:提交公钥失败,服务无响应"); LogUtils.e(TAG, "testStep5SubmitPublicKey:提交应用公钥到服务器失败,服务无响应"); @@ -428,13 +428,13 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic LogUtils.w(TAG, "testAllStep-步骤1:执行失败,邮箱或服务地址格式无效"); return; } - ServerUtils.initServerUrl(serverUrl); + AppUtils.initServerUrl(serverUrl); updateStatus("全流程-步骤1:校验通过"); LogUtils.d(TAG, "testAllStep-步骤1:执行成功"); sleep(1000); // 步骤2:发送验证码 - String sendResult = ServerUtils.sendVerifyCode(email); + String sendResult = AppUtils.sendVerifyCode(email); if (sendResult == null || !sendResult.contains("success")) { updateStatus("全流程失败:步骤2验证码发送失败"); LogUtils.w(TAG, "testAllStep-步骤2:执行失败,验证码发送失败,服务返回=" + sendResult); @@ -446,7 +446,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic // 步骤3:验证码校验(需用户提前输入) String code = etVerifyCode.getText().toString().trim(); - String verifyResult = ServerUtils.verifyCode(email, code); + String verifyResult = AppUtils.verifyCode(email, code); LogUtils.d(TAG, "testAllStep-步骤3:入参-code=" + code); if (verifyResult == null || !verifyResult.contains("success")) { updateStatus("全流程失败:步骤3验证码校验失败"); @@ -485,7 +485,7 @@ public class AuthTestActivity extends BaseWinBoLLActivity implements View.OnClic sleep(1000); // 步骤5:提交公钥与鉴权登录 - String encryptPong = ServerUtils.submitAppPublicKey(email, appPublicKeyStr); + String encryptPong = AppUtils.submitAppPublicKey(email, appPublicKeyStr); String privateKeyStr = AuthUtils.decryptByPrivateKey(encryptPrivateKey, SERVER_PUBLIC_KEY); String pongJson = AuthUtils.decryptByPrivateKey(encryptPong, privateKeyStr); AuthDataModel pongModel = AuthDataModel.parsePongJson(pongJson); diff --git a/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/manager/HeartbeatManager.java b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/manager/HeartbeatManager.java index e6decb6..5e9b006 100644 --- a/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/manager/HeartbeatManager.java +++ b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/manager/HeartbeatManager.java @@ -2,7 +2,7 @@ package cc.winboll.studio.authcenterapp.manager; import cc.winboll.LogUtils; import cc.winboll.library.model.AuthDataModel; import cc.winboll.library.utils.AuthUtils; -import cc.winboll.library.utils.ServerUtils; +import cc.winboll.studio.authcenterapp.utils.AppUtils; import java.util.Timer; import java.util.TimerTask; @@ -78,7 +78,7 @@ public class HeartbeatManager { return; } // 发送请求 - String response = ServerUtils.sendPingRequest(encryptPing); + String response = AppUtils.sendPingRequest(encryptPing); if (response != null) { handlePongResponse(response); } else { diff --git a/library/src/main/java/cc/winboll/library/utils/ServerUtils.java b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/utils/AppUtils.java similarity index 78% rename from library/src/main/java/cc/winboll/library/utils/ServerUtils.java rename to authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/utils/AppUtils.java index de72195..de5c9ee 100644 --- a/library/src/main/java/cc/winboll/library/utils/ServerUtils.java +++ b/authcenterapp/src/main/java/cc/winboll/studio/authcenterapp/utils/AppUtils.java @@ -1,4 +1,4 @@ -package cc.winboll.library.utils; +package cc.winboll.studio.authcenterapp.utils; import cc.winboll.LogUtils; import java.io.BufferedReader; @@ -11,11 +11,13 @@ import java.util.Map; /** * 纯服务器交互工具类,仅负责封装HTTP请求、调用远程接口,无监听能力 + * 适配Java7语法,兼容Android API30环境 * @Author 豆包&ZhanGSKen - * @Date 2026-01-15 18:00:00 - * @LastEditTime 2026-01-15 23:45:00 + * @Date 2026/01/16 00:00:00 + * @LastEditTime 2026/01/16 00:45:00 */ -public class ServerUtils { +public class AppUtils { + // 基础属性 private static final String TAG = "ServerUtils"; private static final int CONNECT_TIMEOUT = 5000; private static final int READ_TIMEOUT = 5000; @@ -25,6 +27,7 @@ public class ServerUtils { * 初始化服务器基础地址 */ public static void initServerUrl(String url) { + LogUtils.d(TAG, "调用initServerUrl,传入地址:" + url); serverBaseUrl = url; LogUtils.d(TAG, "服务器地址初始化完成:" + serverBaseUrl); } @@ -33,8 +36,9 @@ public class ServerUtils { * 发送验证码请求(POST) */ public static String sendVerifyCode(String email) { + LogUtils.d(TAG, "调用sendVerifyCode,邮箱参数:" + email); String url = serverBaseUrl + "/api/sendVerifyCode"; - Map params = new HashMap<>(); + Map params = new HashMap(); params.put("email", email); return sendPostRequest(url, params); } @@ -43,8 +47,9 @@ public class ServerUtils { * 校验验证码请求(POST) */ public static String verifyCode(String email, String code) { + LogUtils.d(TAG, "调用verifyCode,参数:邮箱[" + email + "] 验证码[" + code + "]"); String url = serverBaseUrl + "/api/verifyCode"; - Map params = new HashMap<>(); + Map params = new HashMap(); params.put("email", email); params.put("code", code); return sendPostRequest(url, params); @@ -54,8 +59,9 @@ public class ServerUtils { * 提交应用公钥请求(POST) */ public static String submitAppPublicKey(String email, String publicKey) { + LogUtils.d(TAG, "调用submitAppPublicKey,参数:邮箱[" + email + "] 公钥[" + publicKey + "]"); String url = serverBaseUrl + "/api/submitPublicKey"; - Map params = new HashMap<>(); + Map params = new HashMap(); params.put("email", email); params.put("appPublicKey", publicKey); return sendPostRequest(url, params); @@ -65,20 +71,31 @@ public class ServerUtils { * 发送心跳PING请求(POST,加密数据) */ public static String sendPingRequest(String encryptPingData) { + LogUtils.d(TAG, "调用sendPingRequest,加密数据:" + encryptPingData); String url = serverBaseUrl + "/api/heartbeat/ping"; - Map params = new HashMap<>(); + Map params = new HashMap(); params.put("encryptData", encryptPingData); return sendPostRequest(url, params); } + /** + * 获取当前初始化的服务器基础地址 + */ + public static String getServerBaseUrl() { + LogUtils.d(TAG, "调用getServerBaseUrl,当前地址:" + serverBaseUrl); + return serverBaseUrl; + } + /** * 通用POST请求封装 */ private static String sendPostRequest(String urlStr, Map params) { + LogUtils.d(TAG, "调用sendPostRequest,请求地址:" + urlStr); if (urlStr == null || params == null) { LogUtils.w(TAG, "POST请求参数为空"); return null; } + HttpURLConnection conn = null; try { URL url = new URL(urlStr); @@ -111,6 +128,7 @@ public class ServerUtils { response.append(line); } br.close(); + LogUtils.d(TAG, "POST请求成功,响应内容:" + response.toString()); return response.toString(); } else { LogUtils.w(TAG, "POST请求失败,响应码:" + conn.getResponseCode()); @@ -124,12 +142,5 @@ public class ServerUtils { } return null; } - - /** - * 获取当前初始化的服务器基础地址 - */ - public static String getServerBaseUrl() { - return serverBaseUrl; - } } diff --git a/library/build.properties b/library/build.properties index 24ba676..75fd85f 100644 --- a/library/build.properties +++ b/library/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Thu Jan 15 06:52:22 GMT 2026 +#Thu Jan 15 07:38:30 GMT 2026 stageCount=0 libraryProject=library baseVersion=15.0 publishVersion=15.0.0 -buildCount=54 +buildCount=56 baseBetaVersion=15.0.1 diff --git a/library/src/main/java/cc/winboll/library/model/HttpServerConnectionModel.java b/library/src/main/java/cc/winboll/library/model/HttpServerConnectionModel.java new file mode 100644 index 0000000..65e1d2e --- /dev/null +++ b/library/src/main/java/cc/winboll/library/model/HttpServerConnectionModel.java @@ -0,0 +1,9 @@ +package cc.winboll.library.model; + +public class HttpServerConnectionModel { + // 公网访问认证信息 + public static final String CONNECTION_AUTH_NAME = "console"; + public static final String CONNECTION_PASSWORD = "JeNJKJxriEcafMxd"; + public static final String PUBLIC_SERVER_URL = "https://console.winboll.cc/authcenter/ping"; + +}