mirror of
https://gitee.com/xmz7891/ykxmz.git
synced 2026-10-18 12:30:44 +00:00
版本 1.8.1 -> 1.8.2
This commit is contained in:
@@ -17,7 +17,7 @@ import zipfile
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
|
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
|
||||||
VERSION = "1.8.1"
|
VERSION = "1.8.2"
|
||||||
NAME = f"ykxmz-{VERSION}"
|
NAME = f"ykxmz-{VERSION}"
|
||||||
|
|
||||||
AGENT_SRC = ROOT / "dist_exe" / "ykxmz"
|
AGENT_SRC = ROOT / "dist_exe" / "ykxmz"
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import time
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
|
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
|
||||||
SETUP = ROOT / "dist" / "ykxmz-setup-1.8.1.exe"
|
SETUP = ROOT / "dist" / "ykxmz-setup-1.8.2.exe"
|
||||||
APP = Path(r"C:\Program Files\ykxmz")
|
APP = Path(r"C:\Program Files\ykxmz")
|
||||||
DATA = Path(r"C:\ProgramData\ykxmz")
|
DATA = Path(r"C:\ProgramData\ykxmz")
|
||||||
EXE = APP / "ykxmz.exe"
|
EXE = APP / "ykxmz.exe"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ def _latest_apk() -> Path:
|
|||||||
(ROOT / "dist").glob("*watch*.apk"),
|
(ROOT / "dist").glob("*watch*.apk"),
|
||||||
key=lambda p: p.stat().st_mtime, reverse=True)
|
key=lambda p: p.stat().st_mtime, reverse=True)
|
||||||
return candidates[0] if candidates else \
|
return candidates[0] if candidates else \
|
||||||
ROOT / "dist" / "ykxmz-watch-1.8.1.apk"
|
ROOT / "dist" / "ykxmz-watch-1.8.2.apk"
|
||||||
|
|
||||||
|
|
||||||
APK = _latest_apk()
|
APK = _latest_apk()
|
||||||
|
|||||||
@@ -26,9 +26,9 @@ ROOT = Path(__file__).resolve().parent.parent
|
|||||||
# 被控端 -> 一个 zip
|
# 被控端 -> 一个 zip
|
||||||
# 服务器端 -> 一个 zip
|
# 服务器端 -> 一个 zip
|
||||||
# 控制端 -> 直接给 APK(不打 zip)
|
# 控制端 -> 直接给 APK(不打 zip)
|
||||||
AGENT_ZIP = ROOT / "dist" / "ykxmz-agent-1.8.1.zip"
|
AGENT_ZIP = ROOT / "dist" / "ykxmz-agent-1.8.2.zip"
|
||||||
SERVER_ZIP = ROOT / "dist" / "ykxmz-server-1.8.1.zip"
|
SERVER_ZIP = ROOT / "dist" / "ykxmz-server-1.8.2.zip"
|
||||||
WATCH_APK = ROOT / "dist" / "ykxmz-watch-1.8.1.apk"
|
WATCH_APK = ROOT / "dist" / "ykxmz-watch-1.8.2.apk"
|
||||||
TOOLCHAIN = Path(r"C:\Users\shu\Desktop\deepseekagent\starklink\toolchain")
|
TOOLCHAIN = Path(r"C:\Users\shu\Desktop\deepseekagent\starklink\toolchain")
|
||||||
JAVAC = TOOLCHAIN / "jdk17" / "bin" / "javac.exe"
|
JAVAC = TOOLCHAIN / "jdk17" / "bin" / "javac.exe"
|
||||||
JAVA = TOOLCHAIN / "jdk17" / "bin" / "java.exe"
|
JAVA = TOOLCHAIN / "jdk17" / "bin" / "java.exe"
|
||||||
@@ -89,7 +89,7 @@ def main() -> int:
|
|||||||
for label, path in (("被控端", agent_dir / "README-agent.txt"),
|
for label, path in (("被控端", agent_dir / "README-agent.txt"),
|
||||||
("服务器端", relay_dir / "README-server.txt"),
|
("服务器端", relay_dir / "README-server.txt"),
|
||||||
("控制端(旁边那份)",
|
("控制端(旁边那份)",
|
||||||
ROOT / "dist" / "ykxmz-watch-1.8.1-说明.txt")):
|
ROOT / "dist" / "ykxmz-watch-1.8.2-说明.txt")):
|
||||||
raw = path.read_bytes() if path.is_file() else b""
|
raw = path.read_bytes() if path.is_file() else b""
|
||||||
check(f"{label}说明有 UTF-8 BOM",
|
check(f"{label}说明有 UTF-8 BOM",
|
||||||
raw[:3] == b"\xef\xbb\xbf", raw[:3])
|
raw[:3] == b"\xef\xbb\xbf", raw[:3])
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.lanremote.watch"
|
package="com.lanremote.watch"
|
||||||
android:versionCode="5"
|
android:versionCode="5"
|
||||||
android:versionName="1.8.1">
|
android:versionName="1.8.2">
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ $d8 = Join-Path $bt "d8.bat"
|
|||||||
|
|
||||||
$work = Join-Path $android "build"
|
$work = Join-Path $android "build"
|
||||||
$outDir = Join-Path $root "dist"
|
$outDir = Join-Path $root "dist"
|
||||||
$apkName = "ykxmz-watch-1.8.1.apk"
|
$apkName = "ykxmz-watch-1.8.2.apk"
|
||||||
|
|
||||||
function Step($text) { Write-Host "`n=== $text ===" -ForegroundColor Cyan }
|
function Step($text) { Write-Host "`n=== $text ===" -ForegroundColor Cyan }
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ $unsigned = Join-Path $work "app-unsigned.apk"
|
|||||||
--min-sdk-version 24 `
|
--min-sdk-version 24 `
|
||||||
--target-sdk-version 34 `
|
--target-sdk-version 34 `
|
||||||
--version-code 5 `
|
--version-code 5 `
|
||||||
--version-name "1.8.1" `
|
--version-name "1.8.2" `
|
||||||
--auto-add-overlay
|
--auto-add-overlay
|
||||||
if ($LASTEXITCODE -ne 0) { throw "aapt2 link 失败" }
|
if ($LASTEXITCODE -ne 0) { throw "aapt2 link 失败" }
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -27,7 +27,7 @@
|
|||||||
; ============================================================================
|
; ============================================================================
|
||||||
|
|
||||||
#define MyAppName "ykxmz"
|
#define MyAppName "ykxmz"
|
||||||
#define MyAppVersion "1.8.1"
|
#define MyAppVersion "1.8.2"
|
||||||
#define MyAppPublisher "小麦子"
|
#define MyAppPublisher "小麦子"
|
||||||
#define MyAppExeName "ykxmz.exe"
|
#define MyAppExeName "ykxmz.exe"
|
||||||
|
|
||||||
@@ -149,7 +149,7 @@ Filename: "{app}\{#MyAppExeName}"; Parameters: "--autostart on"; \
|
|||||||
; 代价是安装器和它是父子关系:用"等整个进程树"的方式调安装器会卡住
|
; 代价是安装器和它是父子关系:用"等整个进程树"的方式调安装器会卡住
|
||||||
; (PowerShell 的 Start-Process -Wait 就是)。
|
; (PowerShell 的 Start-Process -Wait 就是)。
|
||||||
; 学校批量部署请用 cmd:
|
; 学校批量部署请用 cmd:
|
||||||
; cmd /c ykxmz-setup-1.8.1.exe /VERYSILENT /CODE=123456
|
; cmd /c ykxmz-setup-1.8.2.exe /VERYSILENT /CODE=123456
|
||||||
; cmd 只等安装器本身,不等孙子进程,不会卡。
|
; cmd 只等安装器本身,不等孙子进程,不会卡。
|
||||||
Filename: "{app}\{#MyAppExeName}"; Parameters: "--silent"; \
|
Filename: "{app}\{#MyAppExeName}"; Parameters: "--silent"; \
|
||||||
Description: "立即启动(后台运行,不显示窗口)"; \
|
Description: "立即启动(后台运行,不显示窗口)"; \
|
||||||
|
|||||||
+2
-2
@@ -59,7 +59,7 @@ from collections import deque
|
|||||||
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
|
from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
VERSION = "1.8.1"
|
VERSION = "1.8.2"
|
||||||
|
|
||||||
# ---------------- 参数(都能用环境变量覆盖)----------------
|
# ---------------- 参数(都能用环境变量覆盖)----------------
|
||||||
|
|
||||||
@@ -1304,7 +1304,7 @@ class Handler(BaseHTTPRequestHandler):
|
|||||||
# ★ 让 Cloudflare 在边缘缓存这个文件。
|
# ★ 让 Cloudflare 在边缘缓存这个文件。
|
||||||
# 原来这里是 no-store,于是每次下载都要穿隧道回 4G 源站 ——
|
# 原来这里是 no-store,于是每次下载都要穿隧道回 4G 源站 ——
|
||||||
# 实测吞吐只有 3~67 KB/s(15 MB 的安装包根本下不动)。
|
# 实测吞吐只有 3~67 KB/s(15 MB 的安装包根本下不动)。
|
||||||
# 文件名带版本号(ykxmz-setup-1.8.1.exe),同一名字内容
|
# 文件名带版本号(ykxmz-setup-1.8.2.exe),同一名字内容
|
||||||
# 永不改变,所以可以放心长缓存。
|
# 永不改变,所以可以放心长缓存。
|
||||||
self.send_header("Cache-Control",
|
self.send_header("Cache-Control",
|
||||||
"public, max-age=604800, immutable")
|
"public, max-age=604800, immutable")
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
"""局域网遥控 · Windows 被控端。"""
|
"""局域网遥控 · Windows 被控端。"""
|
||||||
|
|
||||||
__version__ = "1.8.1"
|
__version__ = "1.8.2"
|
||||||
APP_NAME = "ykxmz"
|
APP_NAME = "ykxmz"
|
||||||
|
|||||||
Reference in New Issue
Block a user