We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
close icon

Charts on Android crash when zooming in

I am using area, bar and stacked bar charts in Xamarin.Forms application. On Samsung model number SM-N900R4 running Android 5.0, and a original Moto X running Android 5.1 as well as others the application hangs (stops responding) when the user zooms in on any of the charts. The versions of Syncfusion assemblies are (Syncfusion.SfChart.XForms.13.4.53) and (Syncfusion.SfChart.Android.13.4.0.53).
I have Xamarin insights installed to log crash reports, but I am not getting anything when this happens. Any suggestions?

8 Replies

SP Saravana Pandian Murugan Syncfusion Team May 19, 2016 06:49 AM UTC

Hi Scott,

We are unable to reproduce the reported issue at our end. We have prepared a sample based on your requirement which can be downloaded from the following location.

Sample: http://www.syncfusion.com/downloads/support/forum/124126/ze/ZoomingSample-833740476  

If the issue still exists, please provide us the modified sample or attach the screenshot of error log for further assistance.

Thanks,
Saravana Pandian M.
 



SS Scott Smith May 19, 2016 01:24 PM UTC

Your demo does seem to work on the phones I am testing on.  However, I am still experiencing the issue.  In your demo, you are doing all of the work from C#, in my app I am using XAML and data binding.  Could this be an issue?  I cannot send any exception details, as there is none.  The app just hangs and eventually Android kills it because it stopped responding.


SS Scott Smith May 19, 2016 01:39 PM UTC

Here is the relevant code.  Note that the chart(s) displays fine, it is only when the user starts to interact with them, via zooming or tapping that the app hangs.  This only happens on Android, on iOS everything works great.

Attachment: Code_57111f0b.zip


SS Scott Smith May 20, 2016 04:49 PM UTC

I have upgraded to version 14.1.0.46.  However, the issue still remains.  Again, only on Android and there is no stack trace or crash information.  The app just hangs.


SP Saravana Pandian Murugan Syncfusion Team May 23, 2016 12:13 PM UTC

Hi Scott,

We created a support incident under your account to track the status of this requirement. Please log on to our support website to check for further updates.

https://www.syncfusion.com/account/login?ReturnUrl=/support/directtrac/incidents
                                                                                                                                    
Regards,
Saravana Pandian M.


MP Milen Pavlov September 10, 2016 10:19 AM UTC

Have similar issue with Xamarin android 6.0 only and SyncFusion 14.2.0.26 
App crashes on trying to zoom in SFChart. Stacktrace (using HockeyApp):

java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent()ViewDragHelper.java:1014
android.support.v4.widget.DrawerLayout.onInterceptTouchEvent()DrawerLayout.java:1282
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2108
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent()PhoneWindow.java:2403
com.android.internal.policy.PhoneWindow.superDispatchTouchEvent()PhoneWindow.java:1737
android.app.Activity.dispatchTouchEvent()Activity.java:2771
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent()PhoneWindow.java:2364
android.view.View.dispatchPointerEvent()View.java:9520
android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent()ViewRootImpl.java:4238
android.view.ViewRootImpl$ViewPostImeInputStage.onProcess()ViewRootImpl.java:4104
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$AsyncInputStage.forward()ViewRootImpl.java:3795
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$AsyncInputStage.apply()ViewRootImpl.java:3852
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl.deliverInputEvent()ViewRootImpl.java:5932
android.view.ViewRootImpl.doProcessInputEvents()ViewRootImpl.java:5906
android.view.ViewRootImpl.enqueueInputEvent()ViewRootImpl.java:5867
android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent()ViewRootImpl.java:6035
android.view.InputEventReceiver.dispatchInputEvent()InputEventReceiver.java:185
android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
android.view.InputEventReceiver.consumeBatchedInputEvents()InputEventReceiver.java:176
android.view.ViewRootImpl.doConsumeBatchedInput()ViewRootImpl.java:6006
android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run()ViewRootImpl.java:6058
android.view.Choreographer$CallbackRecord.run()Choreographer.java:858
android.view.Choreographer.doCallbacks()Choreographer.java:670
android.view.Choreographer.doFrame()Choreographer.java:600
android.view.Choreographer$FrameDisplayEventReceiver.run()Choreographer.java:844
android.os.Handler.handleCallback()Handler.java:739
android.os.Handler.dispatchMessage()Handler.java:95
android.os.Looper.loop()Looper.java:148
android.app.ActivityThread.main()ActivityThread.java:5422
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()ZygoteInit.java:726
com.android.internal.os.ZygoteInit.main()ZygoteInit.java:616
Xamarin caused by: Java.Lang.RuntimeException: length=1; index=1
--- End of managed Java.Lang.RuntimeException stack trace ---
java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent()ViewDragHelper.java:1014
android.support.v4.widget.DrawerLayout.onInterceptTouchEvent()DrawerLayout.java:1282
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2108
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent()PhoneWindow.java:2403
com.android.internal.policy.PhoneWindow.superDispatchTouchEvent()PhoneWindow.java:1737
android.app.Activity.dispatchTouchEvent()Activity.java:2771
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent()PhoneWindow.java:2364
android.view.View.dispatchPointerEvent()View.java:9520
android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent()ViewRootImpl.java:4238
android.view.ViewRootImpl$ViewPostImeInputStage.onProcess()ViewRootImpl.java:4104
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$AsyncInputStage.forward()ViewRootImpl.java:3795
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$AsyncInputStage.apply()ViewRootImpl.java:3852
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl.deliverInputEvent()ViewRootImpl.java:5932
android.view.ViewRootImpl.doProcessInputEvents()ViewRootImpl.java:5906
android.view.ViewRootImpl.enqueueInputEvent()ViewRootImpl.java:5867
android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent()ViewRootImpl.java:6035
android.view.InputEventReceiver.dispatchInputEvent()InputEventReceiver.java:185
android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
android.view.InputEventReceiver.consumeBatchedInputEvents()InputEventReceiver.java:176
android.view.ViewRootImpl.doConsumeBatchedInput()ViewRootImpl.java:6006
android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run()ViewRootImpl.java:6058
android.view.Choreographer$CallbackRecord.run()Choreographer.java:858
android.view.Choreographer.doCallbacks()Choreographer.java:670
android.view.Choreographer.doFrame()Choreographer.java:600
android.view.Choreographer$FrameDisplayEventReceiver.run()Choreographer.java:844
android.os.Handler.handleCallback()Handler.java:739
android.os.Handler.dispatchMessage()Handler.java:95
android.os.Looper.loop()Looper.java:148
android.app.ActivityThread.main()ActivityThread.java:5422
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()ZygoteInit.java:726
com.android.internal.os.ZygoteInit.main()ZygoteInit.java:616
--- End of managed Java.Lang.RuntimeException stack trace ---
java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
android.support.v4.widget.ViewDragHelper.shouldInterceptTouchEvent()ViewDragHelper.java:1014
android.support.v4.widget.DrawerLayout.onInterceptTouchEvent()DrawerLayout.java:1282
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2108
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
android.view.ViewGroup.dispatchTransformedTouchEvent()ViewGroup.java:2553
android.view.ViewGroup.dispatchTouchEvent()ViewGroup.java:2254
com.android.internal.policy.PhoneWindow$DecorView.superDispatchTouchEvent()PhoneWindow.java:2403
com.android.internal.policy.PhoneWindow.superDispatchTouchEvent()PhoneWindow.java:1737
android.app.Activity.dispatchTouchEvent()Activity.java:2771
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent()WindowCallbackWrapper.java:60
com.android.internal.policy.PhoneWindow$DecorView.dispatchTouchEvent()PhoneWindow.java:2364
android.view.View.dispatchPointerEvent()View.java:9520
android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent()ViewRootImpl.java:4238
android.view.ViewRootImpl$ViewPostImeInputStage.onProcess()ViewRootImpl.java:4104
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$AsyncInputStage.forward()ViewRootImpl.java:3795
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$AsyncInputStage.apply()ViewRootImpl.java:3852
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl$InputStage.onDeliverToNext()ViewRootImpl.java:3703
android.view.ViewRootImpl$InputStage.forward()ViewRootImpl.java:3669
android.view.ViewRootImpl$InputStage.apply()ViewRootImpl.java:3677
android.view.ViewRootImpl$InputStage.deliver()ViewRootImpl.java:3650
android.view.ViewRootImpl.deliverInputEvent()ViewRootImpl.java:5932
android.view.ViewRootImpl.doProcessInputEvents()ViewRootImpl.java:5906
android.view.ViewRootImpl.enqueueInputEvent()ViewRootImpl.java:5867
android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent()ViewRootImpl.java:6035
android.view.InputEventReceiver.dispatchInputEvent()InputEventReceiver.java:185
android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method)
android.view.InputEventReceiver.consumeBatchedInputEvents()InputEventReceiver.java:176
android.view.ViewRootImpl.doConsumeBatchedInput()ViewRootImpl.java:6006
android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run()ViewRootImpl.java:6058
android.view.Choreographer$CallbackRecord.run()Choreographer.java:858
android.view.Choreographer.doCallbacks()Choreographer.java:670
android.view.Choreographer.doFrame()Choreographer.java:600
android.view.Choreographer$FrameDisplayEventReceiver.run()Choreographer.java:844
android.os.Handler.handleCallback()Handler.java:739
android.os.Handler.dispatchMessage()Handler.java:95
android.os.Looper.loop()Looper.java:148
android.app.ActivityThread.main()ActivityThread.java:5422
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()ZygoteInit.java:726
com.android.internal.os.ZygoteInit.main()ZygoteInit.java:616


YP Yuvaraj Palanisamy Syncfusion Team September 12, 2016 07:18 AM UTC

Hi Milen Pavlov,

Thanks for contacting Syncfusion support.

We had already fixed an issue “Charts on Android crash when zooming in” and it’s available in our Essential Studio latest version 14.2.0.32. We request to update to the latest version and let us know if any concerns.

Regards,
Yuvaraj


SH SEOK HYEON replied to Saravana Pandian Murugan April 2, 2018 05:56 AM UTC

Hi Scott,

We created a support incident under your account to track the status of this requirement. Please log on to our support website to check for further updates.

https://www.syncfusion.com/account/login?ReturnUrl=/support/directtrac/incidents
                                                                                                                                    
Regards,
Saravana Pandian M.

good

Loader.
Live Chat Icon For mobile
Up arrow icon