Crashlog链接到.dSYM

Nil*_*esh 14 iphone cocoa-touch ipad symbolicatecrash ios

我有来自不同用户的许多崩溃日志,我有不同的构建和dSYM文件现在如何确保特定的崩溃日志属于哪个构建和dSYM文件.

有没有办法检查crashlog和dSYM是否属于同一个版本......?

问候,

Ker*_*rni 24

您必须归档二进制文件和dSYM,因为每个构建都将创建新的,每个构建都具有相同的UUID.

您可以使用dwarfdump --uuid yourapp.app/yourappdwarfdump --uuid yourapp.app.dSYM检查各个二进制文件的UUID.

要通过Spotlight搜索具有特定UUID的dSYM,您可以执行以下操作:mdfind "com_apple_xcode_dsym_uuids == 5255A87A-B23C-3AE8-B367-14B49C21C1D6" 请注意,此处的UUID是一个以大写字母编写的示例,格式为8-4-4-4-12.


Nil*_*esh 19

好的家伙感谢您的回复,这对我很有帮助.我已经找到了在dSYM文件中找到crashlog之间关系的正确方法.我和你分享这个:

因此,首先将所有的crashlog和dSYM保存在一个目录中并运行以下命令,它们为您提供应用程序的UUIDS和崩溃日志的UUID(如果它们与您匹配).在运行命令之前,请确保您位于保存所有这些文件的同一文件夹中.

首先运行命令:

mdls YourApp.app.dSYM  
Run Code Online (Sandbox Code Playgroud)

哪个会给你以下结果(样本):

com_apple_xcode_dsym_paths =("Contents/Resources/DWARF/YourApp") com_apple_xcode_dsym_uuids =("9AD4BCAF-C847-38B1-9055-CF4221BE2F65") kMDItemContentCreationDate = 2012-08-27 08:42:40 +0000 kMDItemContentModificationDate = 2012-08-27 08 :42:40 +0000 kMDItemContentType ="com.apple.xcode.dsym"kMDItemContentTypeTree =("com.apple.xcode.dsym","com.apple.package","public.directory","public.item") kMDItemDateAdded = 2012-09-06 11:30:37 +0000 kMDItemDisplayName ="Yourapp.app.dSYM"kMDItemFSContentChangeDate = 2012-08-27 08:42:40 +0000 kMDItemFSCreationDate = 2012-08-27 08:42:40 + 0000 kMDItemFSCreatorCode = "" kMDItemFSFinderFlags = 0 kMDItemFSHasCustomIcon = 0 kMDItemFSInvisible = 0 kMDItemFSIsExtensionHidden = 0 kMDItemFSIsStationery = 0 kMDItemFSLabel = 0 kMDItemFSName = "YourApp.app.dSYM" kMDItemFSNodeCount = 1 kMDItemFSOwnerGroupID = 20 kMDItemFSOwnerUserID = 501 kMDItemFSSize = 58267749 kMDItemFSTypeCode = "" kMDItemKind = "Package"kMDItemLogicalSize = 58267749 kMDItemPhysic alSize = 58273792

现在,您获得了dSYMB文件的UUID(粗体).

现在运行以下命令:

grep "+YourApp" *crash 
Run Code Online (Sandbox Code Playgroud)

这将导致:

YourApp 8-27-12 2-25 PM.crash:0xe6000 - 0x8e9fff + YourApp armv7 <9ad4bcafc84738b19055cf4221be2f65> /var/mobile/Applications/A5870F65-2694-4A06-BBDE-8BCA709FB838/Bitzer.app/Bitzer

因此,在此结果中,您将再次找到32位数字符串(粗体),它是应用程序二进制文件的UUID.如果此UUID与您的dSYM文件UUID匹配,则它们属于同一版本.

这就是我所观察到的.我已经投了所有的回复再次感谢回复一直帮助人们好运.. :)