应用程序启动后(第一次),我想为用户分配一个唯一的 ID(不是用于跟踪,也不是用于设备 ID,只是一个轻量级用户 ID,以便为后端提供绑定请求的内容)。
我在 SwiftUI (App.swift) 中有这行简单的代码:
@AppStorage("userId") var userId: String = UUID().uuidString
在同一个班级,我这样做:
init() {
print("User ID: \(userId)")
}
每次运行此程序时,UUID 都是不同的。现在,我知道第一个反应可能是什么:这是由于模拟器和我使应用程序崩溃(通过重新运行它)。
但是,我尝试了以下操作,并收到了相同的结果(即每次启动时都有不同的 UUID):
这个线程似乎肯定是因为开发环境,但是我如何在开发中测试它呢?背景不适合我?
初始值应该是一个空字符串,然后在创建用户时将其设置为
UUID
,例如
@AppStorage("userId") var userId: String = ""
func createUser() {
userId = UUID().uuidString
}