Mac Catalyst应用程序在其他Mac上崩溃,但从Xcode运行时可以工作



我在将Mac catalyst应用程序分发给测试人员时遇到问题,当它在我的机器上正常运行时,在其他机器上启动后立即崩溃,没有任何人类可以理解的崩溃报告。

此外,当我们用Xcode在mac上运行它时,它正常工作,当它被运到我的mac时会崩溃。这里我做了什么-我使用的是Xcode 11.3.1,申请是自动签署的,我在发货前公证了它,没有错误。

有人知道它为什么会崩溃吗?

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]'
terminating with uncaught exception of type NSException
abort() called
Application Specific Backtrace 1:
0   CoreFoundation                      0x00007fff3913a8ab __exceptionPreprocess + 250
1   libobjc.A.dylib                     0x00007fff6f3f4805 objc_exception_throw + 48
2   CoreFoundation                      0x00007fff391e98ae _CFThrowFormattedException + 202
3   CoreFoundation                      0x00007fff391f424b -[__NSPlaceholderDictionary initWithObjects:forKeys:count:].cold.5 + 0
4   CoreFoundation                      0x00007fff39044d69 -[__NSPlaceholderDictionary initWithObjects:forKeys:count:] + 235
5   CoreFoundation                      0x00007fff39044c66 +[NSDictionary dictionaryWithObjects:forKeys:count:] + 59
6   CoinStats                           0x0000000108e5cbbf CoinStats + 2198463
7   UIKitCore                           0x00007fff76fa6657 -[UIViewController _sendViewDidLoadWithAppearanceProxyObjectTaggingEnabled] + 83
8   UIKitCore                           0x00007fff76f8fc50 -[UIViewController loadViewIfRequired] + 1023
9   UIKitCore                           0x00007fff76f8f83e -[UIViewController view] + 27
10  UIKit                               0x00007fff70a187df -[UISplitViewControllerAccessibility _axModalizeViewControllerViews] + 309
11  UIKit                               0x00007fff70a18a8c -[UISplitViewControllerPanelImplAccessibility loadView] + 158
12  UIKitCore                           0x00007fff76f8f8fd -[UIViewController loadViewIfRequired] + 172
13  UIKitCore                           0x00007fff76f8f83e -[UIViewController view] + 27
14  CoinStats                           0x0000000108c99b5f CoinStats + 351071
15  UIKitCore                           0x00007fff77b8361f -[UIStoryboardSegueTemplate _performWithDestinationViewController:sender:] + 276
16  UIKitCore                           0x00007fff77b834dd -[UIStoryboardSegueTemplate _perform:] + 82
17  UIKitCore                           0x00007fff775a477a -[UIViewController performSegueWithIdentifier:sender:] + 99
18  UIKit                               0x00007fff70a92720 -[UIViewControllerAccessibility performSegueWithIdentifier:sender:] + 102
19  CoinStats                           0x0000000108d937d7 CoinStats + 1374167
20  CoinStats                           0x0000000108d91ed7 CoinStats + 1367767
21  UIKitCore                           0x00007fff76fa6657 -[UIViewController _sendViewDidLoadWithAppearanceProxyObjectTaggingEnabled] + 83
22  UIKitCore                           0x00007fff76f8fc50 -[UIViewController loadViewIfRequired] + 1023
23  UIKitCore                           0x00007fff76f8f83e -[UIViewController view] + 27
24  UIKitCore                           0x00007fff76fe99c5 -[UIWindow addRootViewControllerViewIfPossible] + 156
25  UIKitCore                           0x00007fff76f7c8e3 -[UIWindow _updateLayerOrderingAndSetLayerHidden:actionBlock:] + 210
26  UIKitCore                           0x00007fff76fe7944 -[UIWindow _setHidden:forced:] + 361
27  UIKit                               0x00007fff70a18944 -[UIWindowAccessibility _orderFrontWithoutMakingKey] + 86
28  UIKitCore                           0x00007fff76fe7787 -[UIWindow _mainQueue_makeKeyAndVisible] + 42
29  CoinStats                           0x0000000108dbd543 CoinStats + 1545539
30  UIKitCore                           0x00007fff76f710d0 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 312
31  UIKitCore                           0x00007fff76f70947 -[UIApplication _callInitializationDelegatesWithActions:forCanvas:payload:fromOriginatingProcess:] + 5764
32  UIKitCore                           0x00007fff76f6dd3e -[UIApplication _runWithMainScene:transitionContext:completion:] + 1319
33  UIKitCore                           0x00007fff76f6d70b -[_UISceneLifecycleMultiplexer completeApplicationLaunchWithFBSScene:transitionContext:] + 122
34  UIKitCore                           0x00007fff76f6890b _UIScenePerformActionsWithLifecycleActionMask + 83
35  UIKitCore                           0x00007fff76f6ce55 __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke + 198
36  UIKitCore                           0x00007fff76f6cc34 -[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromReasons:] + 467
37  UIKitCore                           0x00007fff76f6be39 -[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:] + 823```

经过长时间的研究,我发现了这个问题。我们在应用程序中使用了自定义字体,导致了崩溃,这似乎是苹果的错误,因为字体链接正确,并添加到了Info.plist中。此外,在安装了字体的机器上,应用程序没有崩溃。将字体更改为苹果提供的类似字体后,该应用程序可以完美工作。

最新更新