// // LaunchManager.swift // punchnet // // Created by 安礼成 on 2026/3/23. // import ServiceManagement import Observation @Observable class LaunchManager { // 获取当前主 App 的服务实例 private let service = SMAppService.mainApp // 检查当前是否已开启自启动 var launchAtLogin: Bool init() { self.launchAtLogin = (service.status == .enabled) } func toggleLaunchAtLogin(enabled: Bool) throws { if enabled { try service.register() } else { try service.unregister() } // 3. 重点:操作完成后,手动更新存储属性以触发 View 刷新 self.launchAtLogin = (service.status == .enabled) } // 4. 提供一个手动同步方法(用于应对用户在系统设置中修改的情况) func refreshLaunchStatus() { self.launchAtLogin = (service.status == .enabled) } }