DebugSwift - 提升 iOS 应用调试体验的工具包 在开发 iOS 应用时调试是一个不可或缺的环节而DebugSwift正是为了优化这个过程而诞生的一个强大工具包。无论是处理故障、优化性能还是实时监控应用状态DebugSwift 都能提供全面的支持帮助开发者高效地解决问题。目录功能特性安装与设置故障排查使用示例配置功能特性 网络监视器HTTP 监控捕获所有请求/响应提供详细日志记录及过滤功能。WebSocket 监控自动监控 WebSocket 连接和消息无需配置。请求限制设定阈值监控和控制 API 的使用情况。智能内容自动格式化 JSON 数据并提供语法高亮显示。加密支持支持 AES-256/128 数据解密便于处理加密的 API 响应。⚡ 性能监控实时指标实时监控 CPU、内存和帧率等性能指标。内存泄漏检测自动检测泄漏的 ViewControllers 和视图。线程检查检测主线程违规提供详细的堆栈跟踪信息。性能小工具叠加层显示实时性能数据。 应用工具崩溃报告提供详细崩溃分析包括截屏和堆栈跟踪。控制台日志实时监听和过滤控制台输出。设备信息获取应用版本、构建号、设备详细信息等。APNS Tokens便捷访问和复制推送通知 token。自定义动作支持添加自定义调试动作和信息。 界面工具网格叠加提供自定义颜色和透明度的视觉对齐网格。视图层级3D 互动视图层级检查工具帮助理解 UI 结构。触摸指示器提供触摸互动的视觉反馈。动画控制减缓动画速度便于调试。视图边框高亮显示视图边界便于查看结构。 资源工具文件浏览器浏览应用沙盒和共享应用组容器。UserDefaults实时查看和修改应用偏好设置。钥匙串检查钥匙串条目。数据库浏览器检查 SQLite 和 Realm 数据库。推送通知根据模板模拟推送通知以进行测试。安装与设置 使用 Swift Package Manager推荐在您的Package.swift文件中添加dependencies:[.package(url:https://github.com/DebugSwift/DebugSwift.git,from:1.0.0)]或者通过 Xcode 添加文件添加包依赖 输入 URLhttps://github.com/DebugSwift/DebugSwift 使用 CocoaPods选项 1源分发标准在Podfile中添加podDebugSwift选项 2XCFramework 分发构建更快 ⚡在Podfile中添加podDebugSwift,:httphttps://github.com/DebugSwift/DebugSwift/releases/latest/download/DebugSwift.xcframework.zip 支持 Apple SiliconDebugSwift 完全支持 Apple Silicon Mac提供原生 arm64 模拟器构建无需架构排除或兼容性问题。基本设置在您的 AppDelegate 中初始化 DebugSwiftimportDebugSwiftmainclassAppDelegate:UIResponder,UIApplicationDelegate{privateletdebugSwiftDebugSwift()funcapplication(_application:UIApplication,didFinishLaunchingWithOptions launchOptions:[UIApplication.LaunchOptionsKey:Any]?)-Bool{#ifDEBUGdebugSwift.setup()// debugSwift.setup(disable: [.leaksDetector])debugSwift.show()#endifreturntrue}}摇动切换可选extensionUIWindow{openoverridefuncmotionEnded(_motion:UIEvent.EventSubtype,with event:UIEvent?){super.motionEnded(motion,with:event)#ifDEBUGifmotion.motionShake{ifletappDelegateUIApplication.shared.delegateas?AppDelegate{appDelegate.debugSwift.toggle()}}#endif}}故障排查Apple Silicon 构建问题如果在 Apple Silicon Mac 上遇到error unsupported Swift architecture或DebugSwift.framework only contains x86_64 slice for simulator的构建错误解决方案 1更新到最新版本确保您使用的是最新版本的 DebugSwift该版本已包括 Apple Silicon 支持。podDebugSwift,~ 1.8.1解决方案 2使用 XCFramework 分发推荐podDebugSwift,:httphttps://github.com/DebugSwift/DebugSwift/releases/latest/download/DebugSwift.xcframework.zip解决方案 3移除架构排除设置如果您在项目中有自定义的架构排除设置请将其移除。解决方案 4清理构建在 Xcode 中选择Product → Clean Build Folder (⌘⇧K)使用示例增强的层级树Beta利用 iOS 层级树的视觉信息来发现应用中复杂的布局和元素关系。使用方法只需按住圆形按钮即可查看快照和层级的综合概述。结果展示自定义调试动作通过以下示例添加自定义调试动作DebugSwift.App.shared.customAction{[.init(title:Development Tools,actions:[.init(title:Clear User Data){UserDefaults.standard.removeObject(forKey:userData)},.init(title:Reset App State){// 这里放置您的重置逻辑}])]}配置网络过滤您可以配置 DebugSwift 监控的网络请求DebugSwift.Network.shared.ignoredURLs[https://analytics.com]DebugSwift.Network.shared.onlyURLs[https://api.myapp.com]配置网络加密/解密DebugSwift 支持自动解密加密的 API 响应方便调试启用端到端加密的应用。DebugSwift.Network.shared.setDecryptionEnabled(true)ifletkeyyour-32-byte-aes-key-here-123456.data(using:.utf8){DebugSwift.Network.shared.registerDecryptionKey(for:api.example.com,key:key)}Beta 特性要启用实验性特性如 SwiftUI 渲染跟踪需在设置中显式启用。debugSwift.setup(enableBetaFeatures:[.swiftUIRenderTracking])DebugSwift 是一个集成多种调试功能于一体的强大工具极大地提升了 iOS 应用的调试效率可以帮助开发者快速解决问题提升用户体验。与其类似的项目还包括InAppViewDebugger主要用于查看iOS应用的视图层次结构。CocoaDebug提供网络请求监控、内存使用检查等功能适合调试和性能分析。DBDebugToolkit包括自卫生内存泄漏检测、网络监控和崩溃分析等。DebugSwift 以其全面的功能和易于使用的界面使调试 iOS 应用变得更加简单高效成为开发者的绝佳助手。