Declined
Last Updated: 17 Oct 2019 13:23 by ADMIN
Marc
Created on: 17 Oct 2019 13:14
Category: UI for Xamarin
Type: Bug Report
1
Android app hard crashes with ListView control

We have yet to upgrade our mobile app to Xamarin Forms 4.x and the latest Telerik releases due to a hard crash in Android when we leave a page containing a Telerik ListView control.   

The exception seems to mirror what is discussed here:  https://www.telerik.com/forums/null-ref-error-iorderedtraversalcontroller-updatetraversalorder

Here is what we are seeing... what is the latest on addressing this error?   We need to upgrade from Xamarin Forms 3.6.x soon.

 

 

10-16 15:00:06.082 I/MonoDroid( 4686): UNHANDLED EXCEPTION:

10-16 15:00:06.084 I/MonoDroid( 4686): System.NullReferenceException: Object reference not set to an instance of an object.

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.PageRenderer.Xamarin.Forms.Platform.Android.IOrderedTraversalController.UpdateTraversalOrder () [0x000a4] in D:\a\1\s\Xamarin.Forms.Platform.Android\Renderers\PageRenderer.cs:186

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].UpdateParentPageTraversalOrder () [0x00025] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:402

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00116] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:366

10-16 15:00:06.084 I/MonoDroid( 4686):   at (wrapper delegate-invoke) <Module>.invoke_void_object_PropertyChangedEventArgs(object,System.ComponentModel.PropertyChangedEventArgs)

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.BindableObject.OnPropertyChanged (System.String propertyName) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\BindableObject.cs:211

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Element.OnPropertyChanged (System.String propertyName) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:359

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Element.set_Parent (Xamarin.Forms.Element value) [0x000e9] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:216

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.Element.OnChildRemoved (Xamarin.Forms.Element child) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:341

10-16 15:00:06.084 I/MonoDroid( 4686):   at Xamarin.Forms.ViewCell.set_View (Xamarin.Forms.View value) [0x00019] in D:\a\1\s\Xamarin.Forms.Core\Cells\ViewCell.cs:25

10-16 15:00:06.084 I/MonoDroid( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.ListView.CellContainerBase.Dispose (System.Boolean disposing) [0x00034] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.084 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.084 I/MonoDroid( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.FormsListViewDataSourceAdapterBase.ClearCachedViews () [0x00023] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.RadListViewDataSourceAdapter.ClearCachedViews () [0x00000] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.RadListViewDataSourceAdapter.Dispose (System.Boolean disposing) [0x00003] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.ListViewRenderer.OnElementDetached (Telerik.XamarinForms.DataControls.RadListView oldElement) [0x00042] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Telerik.XamarinForms.Common.Android.AndroidRendererBase`2[S,T].Dispose (System.Boolean disposing) [0x0001f] in <14fbe24a55144e3caaf308ca594f4d5e>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.Platform+DefaultRenderer.Dispose (System.Boolean disposing) [0x0000a] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:1290

10-16 15:00:06.085 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.Platform+DefaultRenderer.Dispose (System.Boolean disposing) [0x0000a] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:1290

10-16 15:00:06.085 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.PageRenderer.Dispose (System.Boolean disposing) [0x00024] in D:\a\1\s\Xamarin.Forms.Platform.Android\Renderers\PageRenderer.cs:53

10-16 15:00:06.085 I/MonoDroid( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at Xamarin.Forms.Platform.Android.AppCompat.FragmentContainer.OnDestroyView () [0x0003c] in D:\a\1\s\Xamarin.Forms.Platform.Android\AppCompat\FragmentContainer.cs:80

10-16 15:00:06.085 I/MonoDroid( 4686):   at Android.Support.V4.App.Fragment.n_OnDestroyView (System.IntPtr jnienv, System.IntPtr native__this) [0x00008] in <fefee6c2c695459088a9df092723e052>:0

10-16 15:00:06.085 I/MonoDroid( 4686):   at (wrapper dynamic-method) Android.Runtime.DynamicMethodNameCounter.97(intptr,intptr)

10-16 15:00:06.088 E/AppCenterCrashes( 4686): Unhandled Exception from source=AndroidEnvironment

10-16 15:00:06.088 E/AppCenterCrashes( 4686): System.NullReferenceException: Object reference not set to an instance of an object.

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.PageRenderer.Xamarin.Forms.Platform.Android.IOrderedTraversalController.UpdateTraversalOrder () [0x000a4] in D:\a\1\s\Xamarin.Forms.Platform.Android\Renderers\PageRenderer.cs:186

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].UpdateParentPageTraversalOrder () [0x00025] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:402

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00116] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:366

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at (wrapper delegate-invoke) <Module>.invoke_void_object_PropertyChangedEventArgs(object,System.ComponentModel.PropertyChangedEventArgs)

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.BindableObject.OnPropertyChanged (System.String propertyName) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\BindableObject.cs:211

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Element.OnPropertyChanged (System.String propertyName) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:359

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Element.set_Parent (Xamarin.Forms.Element value) [0x000e9] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:216

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Element.OnChildRemoved (Xamarin.Forms.Element child) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Element.cs:341

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.ViewCell.set_View (Xamarin.Forms.View value) [0x00019] in D:\a\1\s\Xamarin.Forms.Core\Cells\ViewCell.cs:25

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.ListView.CellContainerBase.Dispose (System.Boolean disposing) [0x00034] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.FormsListViewDataSourceAdapterBase.ClearCachedViews () [0x00023] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.RadListViewDataSourceAdapter.ClearCachedViews () [0x00000] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.RadListViewDataSourceAdapter.Dispose (System.Boolean disposing) [0x00003] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.DataControlsRenderer.Android.ListViewRenderer.OnElementDetached (Telerik.XamarinForms.DataControls.RadListView oldElement) [0x00042] in <12ab8aad1d0a41af83f0de07840de122>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Telerik.XamarinForms.Common.Android.AndroidRendererBase`2[S,T].Dispose (System.Boolean disposing) [0x0001f] in <14fbe24a55144e3caaf308ca594f4d5e>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.Platform+DefaultRenderer.Dispose (System.Boolean disposing) [0x0000a] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:1290

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.Platform+DefaultRenderer.Dispose (System.Boolean disposing) [0x0000a] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:1290

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Java.Lang.Object.Dispose () [0x00000] in <11a340ccc8de43f09c97400139266ef5>:0

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.VisualElementRenderer`1[TElement].Dispose (System.Boolean disposing) [0x000c7] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:311

10-16 15:00:06.088 E/AppCenterCrashes( 4686):   at Xamarin.Forms.Platform.Android.PageRenderer.Dispose (System.Boolean disposing) [0x00024] in D:\a\1\s\Xamarin.Forms.Platform.Android\

 

 

1 comment
ADMIN
Didi
Posted on: 17 Oct 2019 13:23

Hello Marc,

Thank you for the provided details.

We are aware of this issue and we have it logged in our feedback portal. Here is the link:

https://feedback.telerik.com/xamarin/1418464-android-nullreferenceexception-is-thrown-when-navigating-back-and-using-xamarin-forms-4-1

The issue is confirmed to be in Xamarin.Forms framework. A fix is already provided. The Xamarin.Forms 4.3 version will contain the fix.

Note that I have changed the status of this feedback item to "Declined" as we have it logged. 

Regards,
Didi
Progress Telerik