私のアプリは、iOS 7.1.2 から iOS 8.4 をサポートするアプリ ストアにあり、8.4 バージョンまで正常に動作しています。iOS 9 ベータ 5 で同じアプリを実行しようとすると、クラッシュしました。iOS 9 ベータ 4 では問題なく動作していました。デバッグ後、アプリで使用したカスタム フォントがクラッシュの原因であることがわかりました。これは iOS 9 ベータ 5 の問題ですか? 1 週間後に予定されている 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 CoreText
OTL::GPOS::ApplyPairPos(OTL::LookupSubtable const*, OTL::TGlyphIterator&, OTL::Coverage const&) const + 636 フレーム #1: 0x0000000184d72b14 CoreTextOTL::GPOS::ApplyLookupSubtable(OTL::Lookup const&, unsigned int, OTL::LookupSubtable const*, OTL::TGlyphIterator&, OTL::Coverage const&) const + 116 frame #2: 0x0000000184d81690 CoreText
OTL::GPOS: :applylookups(trunglue&、int、otl :: glyphlookups&)const + 544フレーム#3:0x0000000184d80dc0 coretext tkerningengine ::TOpenTypePositioningEngine::PositionRuns(SyncState&, KerningStatus&) + 628 frame #4: 0x0000000184cea7b4 CoreText
positionglyphs(trunglue&、shapingtype、nonextableflag) + 188フレーム[UILabel _textRectForBounds:limitedToNumberOfLines:includeShadow:] + 780 フレーム #9: 0x000000018973137c UIKit -[UILabel embeddedContentSize] + 72 フレーム #11:0x000000018982c3a8 UIKit -[UIView(UIConstraintBasedLayout) _updateContentSizeConstraints]CTFontTransformGlyphs + 440 frame #6: 0x000000019504c85c UIFoundation
-[NSString(NSExtendedStringDrawing) boundingRectWithSize:options:attributes:context:] + 156 frame #8: 0x0000000189731724 UIKit
-[UILabel _intrinsicSizeWithinSize:] + 132 frame #10: 0x000000018982c548 UIKit
-[UIView(UIConstraintBasedLayout) _generateContentSizeConstraints] + 48 frame #12: 0x000000018982bdbc UIKit
- 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 Foundation
-[NSISEngine withBehaviors:performModifications:] + 168 frame #19: 0x000000018982ab78 UIKit
-[UIView(AdditionalLayoutSupport) _withAutomaticEngineOptimizationDisabledIfEngineExists:] + 64 フレーム #20: 0x0000000189f28ec8 UIKit`-[UIView(AdditionalLayoutSupport) _updateConstraintsIfNeededAccumulatingViewsNeedingBasesOnUpdatesForSecond]- 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 CA ::-[CALayer layoutSublayers] + 148 frame #32: 0x0000000188f2cb20 QuartzCore
Layer::layout_if_needed(CA::Transaction*) + 292 フレーム #33: 0x0000000:Quartzc:Coree:CAe9Contextf2CA::Layer::layout_and_display_if_needed(CA::Transaction*) + 32 frame #34: 0x0000000188f2c07c QuartzCore
commit_transaction(CA::Transaction*) + 252 フレーム #35: 0x0000000188f2bdd0 QuartzCoreCA::Transaction::commit() + 516 frame #36: 0x0000000188f254bc QuartzCore
CA::Transaction::observer_callback(CFRunLoopObserver*, unsigned long, void*) + 80 フレーム #37: 0x00000001841cc768 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION- 32 フレーム #38: 0x00000001841ca50c CoreFoundation
__CFRunLoopDoObservers + 372 frame #39: 0x00000001840f98c0 CoreFoundation
CFRunLoopRunSpecific + 416 フレーム #40: 0x00000001897931ec UIKit-[UIApplication _run] + 460 frame #41: 0x000000018978e0d4 UIKit
UIApplicationMain + 204 * フレーム #42: 0x000000010004eb08 SampleFontmain(argc=1, argv=0x000000016fdb7af0) + 124 at main.m:14 frame #43: 0x00000001994ae8b8 libdyld.dylib
start + 4