This commit is contained in:
2026-05-22 14:36:34 +08:00
parent 40f13989c2
commit 1336695068
11 changed files with 115 additions and 16 deletions

View File

@@ -18,7 +18,9 @@ type PlecConfig struct {
}
type ApplovinConfig struct {
Cookie string `json:"cookie"`
Cookie string `json:"cookie"`
DelayMs int `json:"delayMs"`
RandomizeUserAgent *bool `json:"randomizeUserAgent,omitempty"`
}
type SendToMobileConfig struct {
@@ -38,6 +40,23 @@ type AppConfig struct {
var configMu sync.Mutex
// userDataDir returns %LOCALAPPDATA%\HPLToolbox, creating it if needed.
// All mutable app files (config, lock, logs, WebView2 cache) live here so
// they are never placed next to the executable, which may be on a synced or
// antivirus-watched drive and would cause message-loop stalls.
func userDataDir() string {
local := os.Getenv("LOCALAPPDATA")
if local == "" {
local = os.Getenv("APPDATA")
}
if local == "" {
return appDir()
}
dir := filepath.Join(local, "HPLToolbox")
_ = os.MkdirAll(dir, 0755)
return dir
}
func defaultConfig() AppConfig {
return AppConfig{
Plec: PlecConfig{
@@ -46,7 +65,7 @@ func defaultConfig() AppConfig {
PreviewBase: "https://playable.applovindemo.com/phaser/",
SkipExistsCheck: false,
},
Applovin: ApplovinConfig{Cookie: ""},
Applovin: ApplovinConfig{Cookie: "", DelayMs: 5000},
SendToMobile: SendToMobileConfig{Port: 0},
DailyUpdate: DailyUpdateConfig{LastProject: ""},
}
@@ -72,7 +91,7 @@ func appDir() string {
}
func configPath() string {
return filepath.Join(appDir(), "config.json")
return filepath.Join(userDataDir(), "config.json")
}
func LoadConfig() AppConfig {