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

Crash on IOS Device but works fine in Simulator

I have a crash when deploying to a physical iphone 6 but works fine in simulator. I have narrowed the crash down to the synfusion code by excluding it and then the app works fine. I can't see an error message or stacktrace anywhere

here is my offending xaml code

  <StackLayout Orientation="Horizontal" HorizontalOptions="EndAndExpand">
                                    <gauge:SfCircularGauge x:Name="circulargauge" HeightRequest="60" WidthRequest="60">
                                        <gauge:SfCircularGauge.Headers>
                                            <gauge:Header Text="Score" Position="0.5,0.5" TextSize="8" ForegroundColor="Gray" />
                                            <gauge:Header Text="{Binding ScaledScore, StringFormat='{0:N0}%'}" Position="0.5,0.9" TextSize="10" ForegroundColor="Gray" />
                                        </gauge:SfCircularGauge.Headers>
                                        <gauge:SfCircularGauge.Scales>
                                            <gauge:Scale ShowLabels="false" NumberOfDecimalDigits="2" StartAngle="135" StartValue="0" EndValue="0.4" Interval="0" SweepAngle="270" RimThickness="10" RimColor="Black" MinorTicksPerInterval="0">
                                                <gauge:Scale.Pointers>
                                                    <gauge:RangePointer EnableAnimation="true" Value="{Binding WinProbability}" Color="{Binding ScoreGaugeColor}" Thickness="10" />
                                                </gauge:Scale.Pointers>
                                            </gauge:Scale>
                                        </gauge:SfCircularGauge.Scales>
                                    </gauge:SfCircularGauge>
                                    <gauge:SfCircularGauge x:Name="oddsgauge" HeightRequest="60" WidthRequest="60">
                                        <gauge:SfCircularGauge.Headers>
                                            <gauge:Header Text="Odds" Position="0.5,0.5" TextSize="8" ForegroundColor="Gray" />
                                            <gauge:Header Text="{Binding Odds, StringFormat='${0:N}'}" Position="0.5,0.9" TextSize="10" ForegroundColor="Gray" />
                                        </gauge:SfCircularGauge.Headers>
                                        <gauge:SfCircularGauge.Scales>
                                            <gauge:Scale ShowLabels="false" NumberOfDecimalDigits="2" StartAngle="135" StartValue="0" EndValue="{Binding WinOddsScale}" Interval="0" SweepAngle="270" RimThickness="10" RimColor="Black" MinorTicksPerInterval="0">
                                                <gauge:Scale.Pointers>
                                                    <gauge:RangePointer Value="{Binding Odds}" Color="{Binding OddsGaugeColor}" Thickness="10" />
                                                </gauge:Scale.Pointers>
                                            </gauge:Scale>
                                        </gauge:SfCircularGauge.Scales>
                                    </gauge:SfCircularGauge>
                                </StackLayout>
                            </StackLayout>
  

3 Replies

DB David Bell August 2, 2017 10:34 AM UTC

I have managed to get a crash report from the phone


It is attached


Exception Type:  EXC_CRASH (SIGABRT)

Exception Codes: 0x0000000000000000, 0x0000000000000000

Exception Note:  EXC_CORPSE_NOTIFY

Triggered by Thread:  0


Application Specific Information:

abort() called


Attachment: GYGT.iOS20170802190144.crash_84a8ee47.zip


DB David Bell August 2, 2017 11:23 AM UTC

UPDATE

I have solved this problem by removing the interval =0 from the scale declaration.

No idea why this didnt cause a problem in the simulator but did on the phone



AK Ashwin Kumaravel Syncfusion Team August 3, 2017 12:05 PM UTC

Hi David,

Thanks for using Syncfusion products,

We are able to reproduce the reported issue “Crash on IOS Device but works fine in Simulator”.We have logged bug report for the same. The fix for this issue will be included in our upcoming Essential Studio Volume 3, 2017 release which is expected to be in first week of August.

Note-We have also found the reason for this issue that in our implementation we have divided a value with interval. When interval is zero then in i386 and x84-64 Architecture will return an infinity and raise the divide-by-zero flag and get crashed, but is a valid operation on ARM because it will return a NaN and raise the invalid floating-point status flag. This is the reason why we are getting crash on devices.

Please get back us if you have any concern.

Regards,
Ashwin

Loader.
Up arrow icon