AnsweredAssumed Answered

Regular Xamarin Forms iOS Crash

Question asked by Dendroyka on Jun 5, 2019
Latest reply on Oct 22, 2019 by Dendroyka

I get this report several times a day from my iOS users. I can't seem to reproduce it. It doesn't appear on Android. Any ideas? 

 

The map in my app can have layers that turn on and off - each with their own labels. Or, by default, the map uses the Vector Aerial Basemap with labels... is that where the problem is?

 

Esri_runtimecore::Map_renderer::TVector_Graphics_surface<Esri_runtimecore::Map_renderer::Label_graphic_state>::update_graphic(long long, std::__1::function<unsigned int (long long, Esri_runtimecore::Map_renderer::Label_graphic_state&)> const&)

BACKGROUND THREAD 8 - CRASHED
  • libsystem_pthread.dylib
    pthread_mutex_lock$VARIANT$mp
  • libc++.1.dylib
    std::__1::mutex::lock()
  • libc++.1.dylib
    std::__1::timed_mutex::lock()
  • ArcGIS-arm64
    Esri_runtimecore::Map_renderer::TVector_Graphics_surface<Esri_runtimecore::Map_renderer::Label_graphic_state>::update_graphic(long long, std::__1::function<unsigned int (long long, Esri_runtimecore::Map_renderer::Label_graphic_state&)> const&)
  • ArcGIS-arm64
    Esri_runtimecore::Map_renderer::Label_layer::remove_graphic_label(int)
  • ArcGIS-arm64
    std::__1::function<void (int)>::operator()(int) const
  • ArcGIS-arm64
    Esri_runtimecore::Labeling::Feature_family::remove_labels(Esri_runtimecore::Labeling::Label_class_ const&, std::__1::function<void (Esri_runtimecore::Labeling::Label_family&)> const&, std::__1::function<void (int)> const&)
  • ArcGIS-arm64
    Esri_runtimecore::Labeling::Label_engine_2D_::remove_label_class(std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<int, std::__1::shared_ptr<Esri_runtimecore::Labeling::Label_class_> >, std::__1::__tree_node<std::__1::__value_type<int, std::__1::shared_ptr<Esri_runtimecore::Labeling::Label_class_> >, void*>*, long> >)
  • ArcGIS-arm64
    std::__1::__function::__func<Esri_runtimecore::Labeling::Label_engine_::schedule_remove_label_class(int const&)::$_11, std::__1::allocator<Esri_runtimecore::Labeling::Label_engine_::schedule_remove_label_class(int const&)::$_11>, bool (Esri_runtimecore::Labeling::Label_engine_&)>::operator()(Esri_runtimecore::Labeling::Label_engine_&)
  • ArcGIS-arm64
    Esri_runtimecore::Labeling::Label_engine_::update_labels()
  • ArcGIS-arm64
    std::__1::__function::__func<pplx::details::_MakeVoidToUnitFunc(std::__1::function<void ()> const&)::$_2, std::__1::allocator<pplx::details::_MakeVoidToUnitFunc(std::__1::function<void ()> const&)::$_2>, unsigned char ()>::operator()()
  • ArcGIS-arm64
    pplx::details::_PPLTaskHandle<unsigned char, pplx::task<unsigned char>::_InitialTaskHandle<void, Esri_runtimecore::Map_renderer::Label_layer::prepare(std::__1::shared_ptr<Esri_runtimecore::Map_renderer::Drawable::Render_properties>&, std::__1::shared_ptr<Esri_runtimecore::Map_renderer::Display_properties> const&)::$_3, pplx::details::_TypeSelectorNoAsync>, pplx::details::_TaskProcHandle>::invoke() const
  • ArcGIS-arm64
    pplx::details::_TaskProcHandle::_RunChoreBridge(void*)
  • ArcGIS-arm64
    Esri_runtimecore::Common::Core_scheduler::bridge_proc_(void*)
  • ArcGIS-arm64
    Esri_runtimecore::Common::Queued_thread::process_message_(std::__1::shared_ptr<Esri_runtimecore::Common::Message_queue::Message> const&)
  • ArcGIS-arm64
    Esri_runtimecore::Common::Queued_thread::execute_()
  • ArcGIS-arm64
    Esri_runtimecore::Common::Thread::thread_proc_(Esri_runtimecore::Common::Thread*)
  • ArcGIS-arm64
    void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)(Esri_runtimecore::Common::Thread*), Esri_runtimecore::Common::Thread*> >(void*)
  • libsystem_pthread.dylib
    _pthread_body

Outcomes