1

我的应用程序在支持 iOS 7.1.2 到 iOS 8.4 的应用商店中,并且在 8.4 版本之前都可以正常工作。当我尝试在 iOS 9 beta 5 上运行相同的应用程序时,它崩溃了。它在 iOS 9 beta 4 中运行良好。调试后我发现崩溃是由于我们在应用程序中使用的自定义字体造成的。这是 iOs 9 beta 5 的问题吗?我应该怎么做才能在一周后的 iOS 9.0 主版本上支持我的应用程序。

下面是崩溃的堆栈跟踪

  • 线程 #1: tid = 0x6d68, 0x0000000184d6e1a4 CoreText OTL::GPOS::ApplyPairPos(OTL::LookupSubtable const*, OTL::TGlyphIterator&, OTL::Coverage const&) const + 636, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x3020451cc) frame #0: 0x0000000184d6e1a4 CoreTextOTL::GPOS::ApplyPairPos(OTL::LookupSubtable const*, OTL::TGlyphIterator&, OTL::Coverage const&) const + 636 帧 #1: 0x0000000184d72b14 CoreText OTL::GPOS::ApplyLookupSubtable(OTL::Lookup const&, unsigned int, OTL::LookupSubtable const*, OTL::TGlyphIterator&, OTL::Coverage const&) const + 116 frame #2: 0x0000000184d81690 CoreTextOTL::GPOS: :ApplyLookups(TRunGlue&, int, OTL::GlyphLookups&) const + 544 frame #3: 0x0000000184d80dc0 CoreText TOpenTypePositioningEngine::PositionRuns(SyncState&, KerningStatus&) + 628 frame #4: 0x0000000184cea7b4 CoreTextTKerningEngine::PositionGlyphs(TRunGlue&, ShapingType, AnnexTableFlag) + 188 frame #5: 0x0000000184ce90a4 CoreText CTFontTransformGlyphs + 440 frame #6: 0x000000019504c85c UIFoundation__NSStringDrawingEngine + 8788 frame #7: 0x000000019504a5bc UIFoundation -[NSString(NSExtendedStringDrawing) boundingRectWithSize:options:attributes:context:] + 156 frame #8: 0x0000000189731724 UIKit- [UILabel _textRectForBounds:limitedToNumberOfLines:includingShadow:] + 780 帧 #9: 0x000000018973137c UIKit -[UILabel _intrinsicSizeWithinSize:] + 132 frame #10: 0x000000018982c548 UIKit-[UILabel intrinsicContentSize] + 72 帧 #11:0x000000018982c3a8 -[UIView(UIConstraintBasedLayout) _generateContentSizeConstraints] + 48 frame #12: 0x000000018982bdbc UIKitUIKit-[UIView(UIConstraintBasedLayout)_updateContentSizeConstraints]
  • 588 帧 #13: 0x0000000189827e5c UIKit -[UIView(AdditionalLayoutSupport) updateConstraints] + 244 frame #14: 0x000000018982bb60 UIKit-[UILabel updateConstraints] + 220 帧 #15: 0x0000000189f28c8c UIKit`-[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPassAndViewsNeedingBaselineUpdate:forSecondPass:]
  • 460 帧 #16: 0x0000000189f28ef4 UIKit`-[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPassAndViewsNeedingBaselineUpdate:forSecondPass:]
  • 200 帧 #17: 0x0000000189f28bbc UIKit`-[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPassAndViewsNeedingBaselineUpdate:forSecondPass:]
  • 252 帧 #18: 0x00000001850b0c00 基础-[NSISEngine withBehaviors:performModifications:] + 168 frame #19: 0x000000018982ab78 UIKit-[UIView(AdditionalLayoutSupport) _withAutomaticEngineOptimizationDisabledIfEngineExists:] + 64 帧 #20: 0x0000000189f28ec8 UIKit`-[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingUpdateSecondPassdSecPass:]ed
  • 156 帧 #21: 0x0000000189f28bbc UIKit`-[UIView(AdditionalLayoutSupport) _internalUpdateConstraintsIfNeededAccumulatingViewsNeedingSecondPassAndViewsNeedingBaselineUpdate:forSecondPass:]
  • 252 帧 #22: 0x0000000189f28ef4 UIKit`-[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingSecondPassAndViewsNeedingBaselineUpdate:forSecondPass:]
  • 200 frame #23: 0x000000018982ba5c UIKit __60-[UIView(AdditionalLayoutSupport) updateConstraintsIfNeeded]_block_invoke + 100 frame #24: 0x00000001850b0c00 Foundation-[NSISEngine withBehaviors:performModifications:] + 168 frame #25: 0x000000018982ab78 UIKit -[UIView(AdditionalLayoutSupport) _withAutomaticEngineOptimizationDisabledIfEngineExists:] + 64 frame #26: 0x000000018982b690 UIKit-[UIView(AdditionalLayoutSupport) updateConstraintsIfNeeded] + 244 frame #27: 0x0000000189848094 UIKit -[UIWindow(UIConstraintBasedLayout) updateConstraintsIfNeeded] + 108 frame #28: 0x0000000189f29598 UIKit-[UIView(AdditionalLayoutSupport) _updateConstraintsAtEngineLevelIfNeeded] + 268 frame #29: 0x0000000189a27808 UIKit -[UIView(Hierarchy) _updateConstraintsAsNecessaryAndApplyLayoutFromEngine] + 176 frame #30: 0x0000000189722640 UIKit-[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 688 帧 #31: 0x0000000188f31f14 QuartzCore -[CALayer layoutSublayers] + 148 frame #32: 0x0000000188f2cb20 QuartzCoreCA::Layer::layout_if_needed(CA::Transaction*) + 292 帧 #33: 2:c9000artfzCore:8 CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32 frame #34: 0x0000000188f2c07c QuartzCore: 8 commit_transaction(CA::Transaction*) + 252 帧 #35: 0x0000000188f2bdd0 QuartzCore CA::Transaction::commit() + 516 frame #36: 0x0000000188f254bc QuartzCoreCA::Transaction::observer_callback(CFRunLoopObserver*, unsigned long, void*) + 80 frame #37: 0x00000001841cc768 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION
  • 32 帧 #38: 0x00000001841ca50c CoreFoundation __CFRunLoopDoObservers + 372 frame #39: 0x00000001840f98c0 CoreFoundationCFRunLoopRunSpecific + 416 帧 #40: 0x00000001897931ec UIKit -[UIApplication _run] + 460 frame #41: 0x000000018978e0d4 UIKitUIApplicationMain + 204 * 帧 #42: 0x000000010004eb08 SampleFont main(argc=1, argv=0x000000016fdb7af0) + 124 at main.m:14 frame #43: 0x00000001994ae8b8 libdyld.dylibstart + 4
4

0 回答 0