【发布时间】:2020-01-09 12:37:29
【问题描述】:
我计划在我的一个 iOS 项目中使用Firebase Performance Monitoring SDK,并且我正在尝试追踪具有不同结果的特定旅程。例如,假设我想跟踪用户重置密码所花费的时间。我将 start 跟踪用户何时开始重置密码之旅,并且我想在成功重置密码时停止跟踪。我的问题是,如果用户因为记住密码而放弃密码重置并取消它,我不会调用跟踪的 stop() 方法。根据我在question 中的理解,它将开始导致内存泄漏,直到停止。我正在尝试一种在不调用 stop() 方法的情况下优雅地结束/停止/丢弃跟踪并停止内存泄漏的方法,因为它会导致报告不正确的数据。
任何建议将不胜感激。
现在我有一个 swift 类来处理跟踪,其中包含以下内容。
private var passwordResetTrace: Trace?
func startPWResetTrace() {
passwordResetTrace.startTrace(name: "passwordTimeTrace")
}
func stopPWResetTrace() {
passwordResetTrace.stop()
}
我不确定这是否只是将 Trace 设置为 nil 这么简单,这在我的脑海中似乎还不够。
【问题讨论】:
标签: firebase firebase-performance