feat: 添加项目基础文件和依赖管理
新增.gitignore、Podfile和Podfile.lock文件以管理项目依赖,添加README.md文件提供项目简介和安装步骤,创建NIMSessionManager、ClientConfig、LogManager和NetworkManager等管理类以支持网络请求和日志记录功能,更新AppDelegate和ContentView以集成NIM SDK和实现用户登录功能。
This commit is contained in:
51
yana/Managers/LogManager.swift
Normal file
51
yana/Managers/LogManager.swift
Normal file
@@ -0,0 +1,51 @@
|
||||
import Foundation
|
||||
|
||||
/// 日志等级
|
||||
public enum LogLevel: Int {
|
||||
case verbose = 0
|
||||
case debug
|
||||
case info
|
||||
case warn
|
||||
case error
|
||||
}
|
||||
|
||||
public class LogManager {
|
||||
/// 单例
|
||||
public static let shared = LogManager()
|
||||
private init() {}
|
||||
|
||||
/// 日志输出
|
||||
/// - Parameters:
|
||||
/// - level: 日志等级
|
||||
/// - message: 日志内容
|
||||
/// - onlyRelease: 是否仅在 Release 环境输出(默认 false,Debug 全部输出)
|
||||
public func log(_ level: LogLevel, _ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
#if DEBUG
|
||||
if onlyRelease { return }
|
||||
print("[\(level)] \(message())")
|
||||
#else
|
||||
print("[\(level)] \(message())")
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: - 快捷方法
|
||||
public func logVerbose(_ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
LogManager.shared.log(.verbose, message(), onlyRelease: onlyRelease)
|
||||
}
|
||||
|
||||
public func logDebug(_ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
LogManager.shared.log(.debug, message(), onlyRelease: onlyRelease)
|
||||
}
|
||||
|
||||
public func logInfo(_ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
LogManager.shared.log(.info, message(), onlyRelease: onlyRelease)
|
||||
}
|
||||
|
||||
public func logWarn(_ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
LogManager.shared.log(.warn, message(), onlyRelease: onlyRelease)
|
||||
}
|
||||
|
||||
public func logError(_ message: @autoclosure () -> String, onlyRelease: Bool = false) {
|
||||
LogManager.shared.log(.error, message(), onlyRelease: onlyRelease)
|
||||
}
|
Reference in New Issue
Block a user