import Foundation import UIKit // 用户可编辑的设备名,持久在 UserDefaults。用于扫码登录 qr/start 的 device_name——设备名 // 在登录时即烤进自签会话令牌,后端按 (userID, deviceName) 记 presence,无在线改名接口 // (见 internal/httpapi/qr.go),故改名在「下次登录」生效。默认取系统设备名。 enum DeviceNameStore { private static let key = "cdrop.deviceName" static var value: String { get { if let v = UserDefaults.standard.string(forKey: key), !v.isEmpty { return v } let sys = UIDevice.current.name return sys.isEmpty ? "iPhone" : sys } set { let trimmed = newValue.trimmingCharacters(in: .whitespacesAndNewlines) UserDefaults.standard.set(trimmed.isEmpty ? nil : trimmed, forKey: key) } } }