# ios_track_sourece_parse **Repository Path**: kaelinda/ios_track_sourece_parse ## Basic Information - **Project Name**: ios_track_sourece_parse - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-20 - **Last Updated**: 2025-04-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: IOS, 堆栈解析, 效率工具 ## README # iOS崩溃堆栈解析工具 一个用于批量解析iOS崩溃堆栈信息的工具,通过dSYM文件将崩溃堆栈转换为可读状态。 ## 功能特性 - 支持CSV和TXT格式的崩溃日志文件 - 手动选择dSYM文件和崩溃堆栈文件 - 自定义导出文件名称和保存目录 - 实时显示解析进度 - 提供日志信息查看功能 - 多线程处理提升解析效率 ## 系统要求 - macOS系统(主要支持平台) - Python 3.9+ - 必要的系统库和工具 ## 安装步骤 1. 克隆或下载本仓库 2. 安装所需依赖: ```bash pip install -r requirements.txt ``` ## 使用方法 1. 运行主程序: ```bash python main.py ``` 2. 在界面上选择崩溃堆栈文件(CSV或TXT格式) 3. 选择对应的dSYM文件或目录 4. 设置输出选项 5. 点击"开始解析"按钮 6. 解析完成后,点击"导出结果"保存解析结果 ## 打包应用 本项目提供了macOS应用打包脚本,特别针对Apple Silicon(M系列芯片)进行了优化。 ### 创建应用图标(可选) 首先,您可以使用图标生成脚本创建应用图标: ```bash python app_icon.py ``` 此脚本将生成一个`app_icon.icns`文件,用于应用程序的图标。 ### 打包为macOS应用 使用打包脚本可以将项目打包为独立的macOS应用程序: ```bash python build.py ``` 打包过程将执行以下步骤: 1. 检查系统环境和依赖项 2. 清理旧的构建文件(可选) 3. 使用py2app构建应用程序 4. 执行后处理步骤 5. 可选地创建DMG安装镜像文件 打包完成后,应用程序将位于`dist`目录下。 ## 输入文件格式 ### CSV文件 CSV文件应包含崩溃堆栈信息列,程序会自动识别包含崩溃堆栈的列。 ### TXT文件 TXT文件中每行应包含一个崩溃堆栈记录,格式类似: ``` 0x0000000102a24000 MyApp + 2293760 ``` ## dSYM文件选择注意事项 在选择dSYM文件时需要注意以下几点: 1. **版本匹配**:dSYM文件必须与崩溃发生时的应用程序版本完全匹配,否则将无法正确解析符号。 2. **文件位置**:dSYM文件通常在以下位置可以找到: - Xcode归档后在归档包中 - 通过Xcode的Organizer导出 - 如使用CI/CD系统构建,需从构建服务器获取 3. **文件结构**:有效的dSYM文件通常是一个包(目录),其结构为: ``` MyApp.app.dSYM/ └── Contents/ └── Resources/ └── DWARF/ └── MyApp ``` 4. **架构支持**:确保dSYM文件包含与崩溃设备匹配的架构(如arm64、armv7等)。 5. **位置独立性**:本工具使用atos命令解析,需要提供正确的dSYM路径,可以选择dSYM包或其内部DWARF文件。 6. **多个dSYM文件**:如果崩溃堆栈涉及多个模块,可能需要多个dSYM文件,建议将它们放在同一目录下。 7. **bitcode影响**:如果应用启用了bitcode,需要从App Store Connect下载生成的dSYM文件。 ## 开发计划 参见 [task.md](.cursor/doc/task.md) 文件获取详细的开发任务清单。 ## 许可证 [MIT License](LICENSE)