#ios #xamarin #crash
#iOS #xamarin #сбой
Вопрос:
У меня сейчас очень серьезная проблема:
Поведение:
Приложение работает при отладке, но в выпуске завершается при запуске приложения.
Информация об отладке неясна по причине сбоя приложения только в режиме выпуска.
- Visual Studio 2019
- Xamarin Forms 4.8.0.1821
- ZXing.Net.Mobile 2.4.1
- ZXing.Net.Mobile.Формы 2.4.1
- Ньютонсофт.Json 12.0.3
- Xamarin.Основы 1.6.1
- SDK 14.4
Файл журнала симулятора:
Process: myapp-ui.iOS [19566]
Path: /Users/USER/Library/Developer/CoreSimulator/Devices/2C19C42D-564E-42CB-B805-C9C49BB1E8FD/data/Containers/Bundle/Application/1F644647-27DB-48EF-96D6-75A169AE4E9D/myapp-ui.iOS.app/myapp-ui.iOS
Identifier: myapp-ui.iOS
Version: 2.0.3 (1610484945)
Code Type: X86-64 (Native)
Parent Process: launchd_sim [17405]
Responsible: SimulatorTrampoline [1267]
User ID: 501
Date/Time: 2021-02-16 12:29:44.629 -0600
OS Version: macOS 11.2.1 (20D74)
Report Version: 12
Anonymous UUID: E13D7872-1C1C-3306-5557-E45B4D68317D
Time Awake Since Boot: 350000 seconds
System Integrity Protection: enabled
Crashed Thread: 0 tid_307 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Application Specific Information:
abort() called
CoreSimulator 732.18.6 - Device: iPhone 12 Pro (2C19C42D-564E-42CB-B805-C9C49BB1E8FD) - Runtime: iOS 14.4 (18D46) - DeviceType: iPhone 12 Pro
Thread 0 Crashed:: tid_307 Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x00007fff61131462 __pthread_kill 10
1 libsystem_pthread.dylib 0x00007fff6116a610 pthread_kill 263
2 libsystem_c.dylib 0x00007fff200fac2e __abort 139
3 libsystem_c.dylib 0x00007fff200faba3 abort 135
4 io.myapp.myapp-easyapp 0x00000001045caa6f xamarin_unhandled_exception_handler 31 (runtime.m:1151)
5 io.myapp.myapp-easyapp 0x000000010445f415 mono_invoke_unhandled_exception_hook 133 (exception.c:1265)
6 io.myapp.myapp-easyapp 0x000000010439ce2a mono_handle_exception_internal 6986 (mini-exceptions.c:2782)
7 io.myapp.myapp-easyapp 0x000000010439b2d9 mono_handle_exception 25 (mini-exceptions.c:3107)
8 io.myapp.myapp-easyapp 0x000000010431b969 mono_amd64_throw_exception 169 (exceptions-amd64.c:409)
9 ??? 0x0000000104f6a5b0 0 4378240432
10 io.myapp.myapp-easyapp 0x00000001045ca7ed xamarin_process_managed_exception 301 (runtime.m:2356)
11 io.myapp.myapp-easyapp 0x00000001045d1482 xamarin_invoke_trampoline 1250 (trampolines-invoke.m:686)
12 io.myapp.myapp-easyapp 0x00000001045d3642 xamarin_arch_trampoline 82 (trampolines-x86_64.m:491)
13 io.myapp.myapp-easyapp 0x00000001045d400a xamarin_x86_64_common_trampoline 118 (trampolines-x86_64-asm.s:51)
14 com.apple.Foundation 0x00007fff208592ba __NSThreadPerformPerform 204
15 com.apple.CoreFoundation 0x00007fff2039038a __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ 17
16 com.apple.CoreFoundation 0x00007fff20390282 __CFRunLoopDoSource0 180
17 com.apple.CoreFoundation 0x00007fff2038f7c6 __CFRunLoopDoSources0 346
18 com.apple.CoreFoundation 0x00007fff20389f2f __CFRunLoopRun 878
19 com.apple.CoreFoundation 0x00007fff203896d6 CFRunLoopRunSpecific 567
20 com.apple.GraphicsServices 0x00007fff2c257db3 GSEventRunModal 139
21 com.apple.UIKitCore 0x00007fff24696cf7 -[UIApplication _run] 912
22 com.apple.UIKitCore 0x00007fff2469bba8 UIApplicationMain 101
23 ??? 0x00000001065cb0a4 0 4401705124
24 ??? 0x00000001065caf13 0 4401704723
25 ??? 0x00000001065c7313 0 4401689363
26 io.myapp.myapp-easyapp 0x00000001043b36d1 mono_jit_runtime_invoke 1569 (mini-runtime.c:3191)
27 io.myapp.myapp-easyapp 0x00000001044d9c08 do_runtime_invoke 54 (object.c:3052) [inlined]
28 io.myapp.myapp-easyapp 0x00000001044d9c08 mono_runtime_invoke_checked 136 (object.c:3220)
29 io.myapp.myapp-easyapp 0x00000001044dff75 do_exec_main_checked 60 [inlined]
30 io.myapp.myapp-easyapp 0x00000001044dff75 mono_runtime_exec_main_checked 117 (object.c:5284)
31 io.myapp.myapp-easyapp 0x00000001043124ec mono_jit_exec_internal 14 (driver.c:1383) [inlined]
32 io.myapp.myapp-easyapp 0x00000001043124ec mono_jit_exec 364 (driver.c:1328)
33 io.myapp.myapp-easyapp 0x00000001045d3196 xamarin_main 1686 (monotouch-main.m:493)
34 io.myapp.myapp-easyapp 0x00000001042cc857 main 55 (main.m:55)
35 libdyld.dylib 0x00007fff2025a3e9 start 1
Комментарии:
1. Включите отладку в конфигурации выпуска и сами разберитесь, что происходит
2. Попробуйте без каких-либо ссылок
3. @Cheesebaron извините, но я уже это пишу, ошибка не воспроизводится в режиме отладки, только релиз, это было связано с файлом Entitlement.plist после нескольких часов расследования, но теперь это происходит только в тестовой версии магазина.
4. Я говорю вам включить отладку в конфигурации режима выпуска или изменить конфигурацию отладки в соответствии с выпуском, за исключением отладки.
Ответ №1:
К счастью, по какой-то причине проблема заключается в файле Entitlement.plist при использовании SecureStorage из Xamarin.Essentials, сбой приложения при тестировании выпуска в магазине, поэтому я удаляю SecureStorage, и проблема решена.
Спасибо всем за все ответы.
Комментарии:
1. Да, вам нужны права доступа к связке ключей при использовании доступа к связке ключей через essentials для iOS simulator. Однако у вас не должно быть этой проблемы на устройствах, поскольку она не нужна. Вы всегда можете проверить вывод logcat в выпуске, локальном или из testflight. Там у вас должны быть некоторые подсказки.
2. Рад, что вы решили эту проблему, не забудьте отметить ответ, когда у вас будет время.