2016-02-05 48 views
6

当我尝试从主办方下载的dSYM,它给了我这个错误:“联合**”下载的dSYM失败“缺少应用程序版本”

缺少应用程序版本
对于应用记录已找到,但“1.0.3”版本“10”的匹配版本不是。

我已启用位码。这是一个Swift和Objective-C pod的快速应用程序。 Xcode Version 7.2(7C68)

当我右键点击档案并查看它在Finder中的包装内容时,我看到一个dSYMs文件夹。我将它压缩并上传到Crashlytics,但它仍然显示我的所有构建都缺少dSYM。它甚至包含App.dsym和一些用于我的豆荚的UUID和其他dsyms。

这是一个XCode错误?

我看到somene在苹果开发者论坛上发布了一个针对tvOS的类似问题,但是那里没有答案。由于某种原因,我不允许在那里提出问题:p

我还没有向iTunesConnect添加构建,是否需要下载dSYM? XCode从哪里下载dSYM?它可能与我的bundleId的形式是co.someString而不是co.someString.someOtherString的事实有关吗?我想不是,我只是在寻找任何东西。

是否禁用位代码是唯一能够为我获取dSYM的方法?

+0

你找到答案了吗?我面临同样的问题。 – lee

+0

我还没有找到答案。我正在考虑迁移到Firebase分析和崩溃报告:( – JohnVanDijk

回答

0

听起来像你的dSYM文件与应用程序二进制文件不匹配,即使应用程序版本号和内部版本号是正确的。每次构建(存档)应用程序时,都会得到新的不同的dSYM文件。

即使您在档案之间没有任何代码更改,也不能使用任何归档项目中的任何dSYM文件。您必须从中获得完全正确的存档和dSYM。

这里的相关info from HockeyApp,与Crashlytics类似的服务。即使他们是差异服务,象征性的崩溃报告也是类似的问题。

+0

什么可能会导致我的dSYM不匹配二进制文件?我该如何解决这个问题? – JohnVanDijk

+0

链接文章的第一段解释了这一点:每次构建应用程序时,会得到一个新的UUID,并且为这个确切的二进制文件创建一个新的dSYM,为了表示符号,你需要确切的相应文件,所以如果你上传了一个dSYM,然后重新编译并得到一个崩溃,但是没有上传新创建的符号, – Kerni

+0

因此,当Crashlytics尝试为我报告崩溃时,即使禁用位代码,也会导致错误422,这意味着它无法找到dSYM。任何想法为什么会发生这种情况。以我所知的各种方式寻找正确的UUIDs的dSYMs,ls grep,find,spotlight,但他们不在那里。 – JohnVanDijk

相关问题