- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
按照此处的说明 https://docs.fabric.io/apple/crashlytics/advanced-setup.html为了自动将 dSYM 文件上传到结构,您只需在应用程序目标上运行 Fabric.framework/run
脚本。
我的项目配置如下:
Project F
- product is Dynamic Framework
Project A
- product is .app
- depends_on:
- Project F
- X.framework from Carthage
在项目 A 的目标上,我添加了构建阶段,以运行 Fabric.framework/run
脚本。在 Project F 的某处,我强行崩溃并观察了 Crashlytics 中的调用堆栈。调用堆栈显示项目 F 但符号显示 (Missing)
(请参阅 https://imgur.com/a/HDubV )
如果我制作包含所有 dSYM 的存档并手动添加到 crashlytics,则会显示项目 F 中的符号。
如何将生成的 dSYM 自动上传到 Crashlytics?我可以使用 restful api 吗?
注意:我假设使用 Carthage 导入的动态框架也会发生相同的行为。
ENABLE_BITCODE = NO
Output Product Directory
- Debug-iphoneos
- App.app
- Frameworks
- ProjectF.framework
- X.framework
- App.app.dSYM
- ProjectF.framework.dSYM
- X.framework.dSYM
If you link in other static or dynamic frameworks, you could see crash reports with missing line numbers or file information. This information comes from your dSYM files, so ensure that your dSYM files for the frameworks are placed in the same directory as the app’s dSYM and that they are built before your .app. - Crashlytics Static or Dynamic Frameworks
正如您在上面的Output Product Directory
中看到的,dSYMs在同一个地方,它们出现在App.app.dSYM
之前的文件夹中
最佳答案
感谢@MikeBonnell
找到上传符号脚本的文档 https://docs.fabric.io/apple/crashlytics/missing-dsyms.html
由于我在 iOS 应用程序中使用(并使用 Cocoapods),我按如下方式更新了我的构建阶段
find ${DWARF_DSYM_FOLDER_PATH} -name "*.dSYM" | xargs -I \{\} ${PODS_ROOT}/Fabric/upload-symbols -a <api-key> -p ios \{\}
关于ios - Crashlytics 如何从 Carthage 框架上传 dsym 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49315550/
我的 Cartfile 有很多库。当我执行迦太基更新时,它会遍历所有库。这可能需要很长时间。 有没有办法用 carthage 只更新一个库?像这样的东西吗? (这行不通) carthage updat
通过 cocoapods 的集成已记录且简单,但我如何使用 Carthage 实现相同的效果? 最佳答案 现在它可以与 Swift 一起使用。 目录文件: github“facebook/Facebo
我需要为iOS项目升级TeamCity CI / CD。我正在使用迦太基进行依赖性管理。 我了解为每个构建执行carthage update是一个坏主意。一个构建代理将为每个新构建重建框架。这是非常耗
假设创建了 2 个框架 A 和 B。在框架 A 内部,包含使用 Cartthage 框架 B。现在,当我在使用 carthage 的项目中包含框架 A 时,它会检查这两个框架,但只构建 B。 我应该怎
我克隆了 this iOS application来自 github 并尝试运行 carthage使用文档中概述的 carthage update。但是,当我这样做时,我收到一条错误消息(实际上,这是
我正在构建自己的 iOS 框架,我想通过 Carthage 提供该框架。它依赖于另外两个框架,也通过 Carthage 安装。当用户安装我的框架时,他是否会获取我安装的第三方框架? 最佳答案 我相信您
我是 iOS 框架的新手,但在玩弄 Carthage 和 Swift 我遇到了一个非常简单的问题,但我似乎没有找到我正在寻找的答案为。 我目前正在研究 Alamofire 和 ObjectMapper
我在 Xcode 中创建了两个框架。 在每个框架中,我使用 Carthage 来获取外部框架。 我有以下设置(希望它有意义): - MyNetworksFramework -- Framework r
Cartfile 文档做出断言: If no version requirement is given, any version of the dependency is allowed. 举个矛盾的
我的 iOS 应用程序通过 Carthage(AudioKit、PromiseKit、Dollar 等)使用某些框架,我现在正尝试将应用程序的部署目标从我们之前使用的 10.x 更改为 9.3。由于框
我按照 this 创建了一个 Swift 框架指导。这适用于客户端应用程序,也可以进行测试。 到目前为止,一切顺利。 当我向我的框架添加一个框架时,例如JASON ,我无法导入我的代码,因为它没有显示
我发现迦太基的这个问题已被问过几次,但我一直无法找到有效的解决方案。我已经尝试了这些线程中具有类似问题的所有建议,但没有一个有效。 XCode Server: Opening import file
我正在尝试移除和删除通过崩溃的 Carthage 添加的 Mapbox Framework。 我关注了these instructions. 然而,在完成上述所有操作并按照说明在 Find 中搜索 c
我正在使用 Carthage 进行依赖管理来调试 iOS 应用程序中的内存损坏问题。 该问题很可能与第 3 方依赖项有关。我已经使用 -configuration Debug 重建了依赖关系,但是没有
我想向我正在开发的这个应用程序添加一个 FrameWork。它将纬度和经度坐标转换为 UTM 坐标。 我将此添加到购物车文件中:github "peterringset/UTMConversion"~
如何知道我通过 Carthage 安装了哪些版本的依赖项? Cartfile.resolved 只通知我项目的依赖关系,而不通知我项目的依赖关系..? 最佳答案 万一还有人想知道: Cartfile.
使用 Carthage 进行依赖管理的正确方法是什么,同时还能够为它引入的类型编写测试。例如,(这是假设的)如果我引入 AlamoFire 并假设它有一个 Response协议(protocol)和不
在我的 iOS 应用中,我尝试使用 Carthage 导入两个框架——这两个框架都依赖 Alamofire(但版本不同)。 当我运行 carthage update --platform ios我收到
迦太基版本:0.25.0 xcodebuild -version: 8.3.3 您是否正在使用 --no-build?没有 您是否在使用 --no-use-binaries?没有 你在使用 --use
我在尝试实现两个框架和一个应用程序之间的以下依赖设置时遇到问题,这些都是我开发的: Util 包含一系列低级实用程序和 Foundation 类型的扩展,例如 String、Date等 UI包含一堆自
我是一名优秀的程序员,十分优秀!