TimberSwift

Carthage Compatible Swift 5.1 Platforms

什么是 TimberSwift?

一个库,用于将来自框架或父应用程序的所有消息发送到父应用程序以供使用。 这意味着父应用程序将全权负责发送到:控制台、UI Toast 消息、监控网络活动、发送到 Flurry / Google Analytics / Firebase / Crashlytics、一些日志记录解决方案或 > /dev/null

工作流程

安装

Carthage

github "MonsantoCo/TimberSwift" ~> 1.0.0

Package Manager

.package(url: "git@github.com:MonsantoCo/TimberSwift.git", from: "1.0.0")

说明

创建一个 Timber 对象并开始使用任何或所有工作流程

timber.performance.startTrace(key: "Some Key", properties: ["Some": "Things for the trace"])
timber.performance.incrementTraceCounter(key: "Some Key")
timber.performance.stopTrace(key: "Some Key")
timber.log.debug("A message", properties: ["More": "Info"])
timber.log.info("A message", properties: ["More": "Info"])
timber.log.warning("A message", properties: ["More": "Info"])
timber.log.error("A message", errorType: .http(statusCode: 500), properties: ["Error": "Info"])
timber.userMessage.toast("Hi There", displayTime: 2.0, type: .success)
timber.analytics.setScreen(title: "The Main Map")
timber.analytics.recordEvent(title: "Downloading Everything", properties: ["Specific": "Info"])
timber.network.startedActivity()
timber.network.endedActivity()

父应用程序应尽快将自身指定为 TimberApplicationDelegate,以接收来自 Timber 对象的所有消息。

func setScreen(title: String, source: Source)
func recordEvent(title: String, properties: [String: Any]?, source: Source)
func log(_ logMessage: LogMessage)
func log(_ error: TimberError)
func toast(_ message: String, displayTime: TimeInterval, type: ToastType, source: Source)
func startTrace(key: String, identifier: UUID?, properties: [String: Any]?, source: Source)
func incrementTraceCounter(key: String, identifier: UUID?, named: String, by count: Int, source: Source)
func stopTrace(key: String, identifier: UUID?, source: Source)
func networkActivityStarted(source: Source)
func networkActivityEnded(source: Source)

在 XCode 中扩展 TimberSwift

选项 1:按原样使用当前的 XCode 项目运行

选项 2:使用 generate-xcodeproj 重建它