Resolved: Crashes in 3D with iOS 15.4 and the ArcGIS Runtime SDK for iOS and .NET (Xamarin.iOS / Xamarin.Forms-iOS)

5925
0
03-31-2022 01:47 PM
Nicholas-Furness
Esri Regular Contributor
4 0 5,925

We have identified an issue displaying a scene view with the ArcGIS Runtime SDK for iOS and the ArcGIS Runtime SDK for .NET (Xamarin.iOS) on iOS 15.4 and 15.4.1. The issue affects iOS and iPadOS devices with an A14, A15, or M1 processor.

[ Update, Apr 13 2022: 100.13.2 released, addressing the fix for iOS and .NET (Xamarin.iOS / Xamarin.Forms-iOS) - see blog ]

[ Update, Apr 12, 2022: We are preparing an update to fix this issue, targeting release on April 13, 2022. ]

[ Update, Apr 5, 2022: We have identified and are assessing a candidate fix. ]

When displaying or interacting with a scene view, the scene view may become unresponsive, or the application may crash.

  • 2D workflows (map view) are not affected.
  • The ArcGIS Runtime SDK for Qt is not affected.
  • Only ArcGIS Runtime SDKs version 100.13 and 100.13.1 are affected.
  • ArcGIS Runtime SDKs version 100.12 and earlier are not affected.
  • This issue impacts all applications that display a scene view.
  • No workaround has been identified.

We are working to identify the root cause and deliver a fix as a top priority, but at present no ETA is available.

[April 5 2022] We have identified and are assessing a candidate fix.

The devices that are impacted are:

  • iPhone 12, 12 Pro, 12 Pro Max, 12 Mini (2020, A14 Bionic)
  • iPhone 13, 13 Pro, 13 Pro Max, 13 Mini (2021, A15 Bionic)
  • iPhone SE 3rd Gen (2022, A15 Bionic)
  • iPad Air 4th Generation (2020, A14 Bionic)
  • iPad Air 5th Generation (2022, M1)
  • iPad Pro 11" 3rd Generation (2021, M1)
  • iPad Pro 12.9" 5th Generation (2021, M1)
  • iPad Mini 6th Generation (2021, A15 Bionic)

The device must be running:

  • iOS 15.4
  • iOS 15.4.1

Earlier versions of iOS (15.3.1 and earlier) are not affected.

A sample stack trace is provided from iOS to help you identify if you are encountering this crash:

 

 

 

Thread 0 [Crashed]:

0    AGXMetalG14                              0x1f17f1d50     0x1f1411000
1    AGXMetalG14                              0x1f17f6028     0x1f1411000
2    Runtimecore                              0x10a72824c     esri::rendering_engine::GPU_device_metal::submit_command_(objc_object*, esri::rendering_engine::Command const&, esri::rendering_engine::Pipeline const*) + 1775
3    Runtimecore                              0x10a7289e0     esri::rendering_engine::GPU_device_metal::submit_commands(esri::common::Span<esri::rendering_engine::Command, -1l>) + 67
4    Runtimecore                              0x10a736b60     esri::rendering_engine::Device::submit(esri::rendering_engine::Render_pass&, esri::common::Span<esri::rendering_engine::Command_set, -1l>) + 83
5    Runtimecore                              0x10a084914     esri::map_renderer_3d::View3D::draw(std::__1::shared_ptr<esri::rendering_engine::Device> const&) + 5023
6    Runtimecore                              0x109938110     esri::geoview::Scene_view::draw(esri::geoview::Device&) + 143
7    Runtimecore                              0x10967fb18     RT_GeoView_draw + 51
8    ArcGIS                                   0x1059d0280     -[AGSMetalGeoViewRenderer drawRequested] (AGSMetalGeoViewRenderer.m:102)
9    ArcGIS                                   0x105a084a0     _28-[AGSGeoView setRtcGeoView:]_block_invoke_2 (AGSGeoView.m:260)
10   ArcGIS                                   0x105a45198     drawRequestedHandler (RTCGeoView.m:298)
11   Runtimecore                              0x10995aa28     $std::__1::function<void (void*)>::operator()(void*) const + 35
12   Runtimecore                              0x10a868abc     esri::common::signal_detail::Signal_base::notify_(esri::common::Function_ref<void (esri::common::signal_detail::erased_target_base&)> const&) const + 351
13   Runtimecore                              0x1098ff140     esri::common::Signal<void (esri::geoview::Geo_view const&)>::notify(esri::geoview::Geo_view const&) const + 39
14   Runtimecore                              0x109905a8c     esri::geoview::Geo_view_draw_requested::draw_request_callback() + 43
15   Runtimecore                              0x10a077cb4     esri::map_renderer_3d::Map3D::pulse() + 447
16   Runtimecore                              0x109938024     esri::geoview::Scene_view::pulse() + 51
17   Runtimecore                              0x109680be0     RT_GeoView_pulse + 27
18   ArcGIS                                   0x1059d01a4     -[AGSMetalGeoViewRenderer drawInMTKView:] (AGSMetalGeoViewRenderer.m:87)
19   MetalKit                                 0x1bd7096fc     -[MTKView draw] + 183
20   MetalKit                                 0x1bd717fb8     -[MTKViewDisplayLinkTarget draw] + 39
21   QuartzCore                               0x184bb31a0     CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 747
22   QuartzCore                               0x184d0e0c4     CA::Display::DisplayLink::dispatch_deferred_display_links() + 347
23   UIKitCore                                0x184140254     _setupUpdateSequence_block_invoke + 215
24   UIKitCore                                0x183aba084     _UIUpdateSequenceRun + 83
25   UIKitCore                                0x18413fcb0     $schedulerStepScheduledMainSection + 143
26   UIKitCore                                0x18413f478     runloopSourceCallback + 91
27   CoreFoundation                           0x180f2cf04     _CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 27
28   CoreFoundation                           0x180f3dc90     _CFRunLoopDoSource0 + 207
29   CoreFoundation                           0x180e77184     _CFRunLoopDoSources0 + 267
30   CoreFoundation                           0x180e7cb4c     _CFRunLoopRun + 827
31   CoreFoundation                           0x180e906b8     CFRunLoopRunSpecific + 599
32   GraphicsServices                         0x19cf2a374     GSEventRunModal + 163
33   UIKitCore                                0x1837f5e88     -[UIApplication _run] + 1099
34   UIKitCore                                0x1835775ec     UIApplicationMain + 363

 

 

 

About the Author
Product Manager for the ArcGIS Runtime SDKs, focusing on the Runtime SDK for iOS. My background is in computer science, but my professional career has always been GIS, in particular Utilities.