我正在尝试将一个Xamarin.Forms应用程序发送到苹果应用商店。我已经在Visual Studio中使用LLVM编译器进行了即席构建。将mac上的输出保存到另一个文件夹(.app、.ipa、.dSYM)。
现在,苹果拒绝了它,因为应用程序的IPv6存在问题,他们正在将崩溃日志附加到该问题上。当我尝试符号化崩溃日志时,我的输出中没有任何与我的应用程序相关的东西,我唯一能联系到的是主类,但它告诉我一个不存在的行号。
以下是符号化输出的一部分:http://pastebin.com/PjhCuTgV
我是不是遗漏了什么,或者从Xamarin中调试iOS代码的更好的方法?
--
编辑:我设法得到了一个更好的崩溃日志:
Last Exception Backtrace:
0 CoreFoundation 0x193fb51b8 __exceptionPreprocess + 124
1 libobjc.A.dylib 0x1929ec55c objc_exception_throw + 52
2 UIKit 0x19a618490 +[UIStoryboard storyboardWithName:bundle:] + 780
3 UIKit 0x19a0eca70 -[UIApplication _loadMainStoryboardFileNamed:bundle:] + 92
4 UIKit 0x199ed5320 -[UIApplication _loadMainInterfaceFile] + 260
5 UIKit 0x19a0eb6e8 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1364
6 UIKit 0x19a100104 __84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invoke.3139 + 44
7 UIKit 0x19a0e87ec -[UIApplication workspaceDidEndTransaction:] + 164
8 FrontBoardServices 0x195b8b92c __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 32
9 FrontBoardServices 0x195b8b798 -[FBSSerialQueue _performNext] + 172
10 FrontBoardServices 0x195b8bb40 -[FBSSerialQueue _performNextFromRunLoopSource] + 52
11 CoreFoundation 0x193f62b5c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 20
12 CoreFoundation 0x193f624a4 __CFRunLoopDoSources0 + 520
13 CoreFoundation 0x193f600a4 __CFRunLoopRun + 800
14 CoreFoundation 0x193e8e2b8 CFRunLoopRunSpecific + 440
15 UIKit 0x199ece7b0 -[UIApplication _run] + 604
16 UIKit 0x199ec9534 UIApplicationMain + 204
17 MyApp 0x100bb22e4 wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr (<unknown>:1)
18 MyApp 0x100b20c4c UIKit_UIApplication_Main_string___intptr_intptr (UIApplication.cs:79)
19 MyApp 0x100b20c0c UIKit_UIApplication_Main_string___string_string (UIApplication.cs:63)
20 MyApp 0x1001fb444 MyApp_iOS_Application_Main_string__ (<unknown>:1)
21 MyApp 0x10047de54 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 240
22 MyApp 0x100116434 mono_jit_runtime_invoke (mini-runtime.c:2551)
23 MyApp 0x10017a658 do_runtime_invoke (object.c:2820)
24 MyApp 0x10017d240 do_exec_main_checked (object.c:2978)
25 MyApp 0x100100198 mono_jit_exec (driver.g.c:1049)
26 MyApp 0x1001fadd0 xamarin_main (monotouch-main.m:485)
27 MyApp 0x1014232dc main (main.arm64.m:159)
28 libdyld.dylib 0x192e715b8 start + 0发布于 2017-02-14 05:53:35
我的问题是这个应用程序启动的时间太长了。在这种情况下,崩溃日志的异常代码应该是: 0x8badf00d。根据苹果文档https://developer.apple.com/library/content/technotes/tn2151/_index.html
The exception code 0x8badf00d indicates that an application has been terminated by iOS because a watchdog timeout occurred. The application took too long to launch, terminate, or respond to system events. 在我的例子中,日志的异常代码是0x0000000000000000,它只是说明了一个未处理的obj-c代码异常。苹果没有提供任何帮助来发现这个问题,因为在我们的设备上,它在TestFlight上工作正常。我最多能让他们帮助我理解他们的环境是:“我按下图标,它崩溃了”。
我修复我的应用程序所做的是尽可能减少初始加载时间,导航到“加载视图”,其中只包含一个ActivityMonitor。当应用程序完全初始化后,我将导航到正确的视图。
https://stackoverflow.com/questions/42028236
复制相似问题