如何从iOS崩溃日志中找出失败的断言?

如何从iOS崩溃日志中找出失败的断言?,ios,debugging,uislider,crash-reports,assertions,Ios,Debugging,Uislider,Crash Reports,Assertions,我有一个来自Xcode的符号化崩溃日志,其中有以下几行: 3 Foundation 0x185a20a1c -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 112 (NSException.m:152) 4 UIKit 0x18a31b044 -[UISlider _setValue:minValue:maxValue:andSendAction:] +

我有一个来自Xcode的符号化崩溃日志,其中有以下几行:

3   Foundation   0x185a20a1c -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 112 (NSException.m:152)
4   UIKit        0x18a31b044 -[UISlider _setValue:minValue:maxValue:andSendAction:] + 224 (UISlider.m:1396)
5   MyApp        0x10013cea8 -[RecordingPlayer updateRecordingControls:fullUpdate:] + 284 (RecordingPlayer.m:1448)
当我设置
UISlider
maximumValue
属性时,从最后一行可以看出应用程序正在崩溃。我可以从另外两行猜测,我的应用程序正在尝试将该属性设置为无效值。但是,有没有办法确切地找出什么断言失败了呢

如果我能找到像“maximumValue必须大于0”这样的解释,这将有助于我理解在我的代码中这个坏值是从哪里计算出来的


不幸的是,我无法在自己的设备上重现该问题,因此当崩溃发生时,我无法调试以检查值。

我怀疑主断言是max-value>min-value。在RecordingPlayer类中创建这样的断言?我可以这样做,但要确定这是问题所在,我必须发布另一个应用程序版本,然后等待崩溃是否再次发生。我想知道,如果可能的话,它在我的下一个版本中是固定的。实际上,我只是尝试将滑块的最小值设置为10,最大值设置为5,这并没有触发断言失败。我还尝试将maximumValue设置为-1,但也没有触发失败。在任何情况下,最好知道哪个断言失败,作为一个更通用的故障排除工具。在RecordingPlayer类中创建这样的断言?我可以这样做,但要确定这是问题所在,我必须发布另一个应用程序版本,然后等待崩溃是否再次发生。我想知道,如果可能的话,它在我的下一个版本中是固定的。实际上,我只是尝试将滑块的最小值设置为10,最大值设置为5,这并没有触发断言失败。我还尝试将maximumValue设置为-1,但也没有触发失败。在任何情况下,最好知道什么断言失败,作为一个更通用的故障排除工具。