This is a migrated thread and some comments may be shown as answers.

iOS browser crash on ScrollView rotation

3 Answers 85 Views
ScrollView (Mobile)
This is a migrated thread and some comments may be shown as answers.
Kerry
Top achievements
Rank 1
Kerry asked on 25 Feb 2014, 02:17 PM
I am having an intermittent problem with iOS browser, both Safari and Chrome crashing when rotation occurs when using ScrollView.  I have created a simple example of this at http://scrollview.azurewebsites.net/.  This example has a links to pages with varying amounts of ScrollView pages.  On my iPad Air (16gb Wi-Fi) I can usually get the browser to crash ("poof" go away) when using the link to the page with 12 pages and rotating the screen.  On my iPhone (5s 32gb) I can get it to happen less often.  I can't reproduce it on an Android Nexus 7.

I have recorded what I see on my iPad: http://youtu.be/9tDtEfMiMGI

In the example pages I am using above, the only custom JavaScript is what is necessary to get Kendo UI Mobile configured:
(function (global) {
    var mobileSkin = "",
        app = global.app = global.app || {};

    document.addEventListener('deviceready', function () {
        navigator.splashscreen.hide();
        $(document.body).height(window.innerHeight);
    }, false);

    app.application = new kendo.mobile.Application(document.body, { layout: "tabstrip-layout"});

})(window);

I am probably doing something totally wrong.  I would appreciate any guidance anyone can provide.  
Thanks!











3 Answers, 1 is accepted

Sort by
0
Alexander Valchev
Telerik team
answered on 27 Feb 2014, 09:36 AM
Hi Kerry,

I tested your test page on iPad 2 with iOS 7 but did not manage to reproduce the crashing problem that you demonstrated in the video. We are not sure what exactly does wrong. Probably you are hitting a memory limit (usually iOS applications crash when they reach a given memory usage). It does not seem that you have opened any other Safari tabs.
My recommendation is to check the device logs for any information that might give a clue what the problem is.

You can reach device logs through the Settings app > General > About > Diagnostics & Usage > Diagnostics & Usage Data > find the latest mobile safari crash log and check for any exceptions/errors.

Regards,
Alexander Valchev
Telerik
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!
0
Kerry
Top achievements
Rank 1
answered on 27 Feb 2014, 01:54 PM
Below is the device log for the crash when I reproduced the problem:
It appears that you were correct, it is memory related.  The name of the device log file was: LowMemory-2014-02-27-073706.plist

I had closed all other apps before running the test.

Do you have suggestions on how to work around this problem?


Incident Identifier: 85D2EE1A-7DC0-407C-8DC3-24061E6D41DC
CrashReporter Key:   662a7013d1478d6297faa8ee88920e1f55f0be13
Hardware Model:      iPad4,1
OS Version:          iPhone OS 7.0.6 (11B651)
Kernel Version:      Darwin Kernel Version 14.0.0: Fri Sep 27 23:08:32 PDT 2013; root:xnu-2423.3.12~1/RELEASE_ARM64_S5L8960X
Date:                2014-02-27 07:37:06 -0600
Time since snapshot: 624 ms
 
Free pages:                              6779
Active pages:                            100193
Inactive pages:                          40079
Speculative pages:                       5507
Throttled pages:                         0
Purgeable pages:                         2133
Wired pages:                             85393
File-backed pages:                       23711
Anonymous pages:                         122068
Compressions:                            503444
Decompressions:                          187084
Compressor Size:                         17137
Uncompressed Pages in Compressor:        50271
Largest process:   MobileSafari
 
Processes
     Name                    <UUID>                       rpages       recent_max   fds      [reason]          (state)
 
coresymbolicatio <1fcfe2583ae43349b750cb1fb27f6b55>           87               87  100   [vm-pageshortage]  (daemon) (idle)
AGXCompilerServi <3e8f0c21acac3decbc30ff91dbaaf705>          452              452  100   [vm-pageshortage]  (daemon) (idle)
            geod <11b3b01893863c0a98149a6b3cab0be9>          360              360  100   [vm-pageshortage]  (daemon) (idle)
            absd <e0cdd81f3d7b36bca9bd5d136bb3dc0f>          113              113  100   [vm-pageshortage]  (daemon) (idle)
IMDPersistenceAg <8273fba29a743c50a3fe5935d907f064>          535              535  100   [vm-pageshortage]  (daemon) (idle)
limitadtrackingd <22983e0098af3cc58e40a549b84fc87c>          268              268  100   [vm-pageshortage]  (daemon) (idle)
AGXCompilerServi <3e8f0c21acac3decbc30ff91dbaaf705>          615              615  100   [vm-pageshortage]  (daemon) (idle)
MailCompositionS <d72f366f086535d2b2e75d90fe5ede69>         8684             8684  100   [vm-pageshortage]  (suspended)
com.apple.lakitu <ecd46a83b02639e793295ca15b73cf30>          437              437  100   [vm-pageshortage]  (daemon) (idle)
             sbd <ed66ee9f739134c2aa61a8e6650df2de>          261              261  100   [vm-pageshortage]  (daemon) (idle)
        recentsd <8b6394bd9dfa3c6bbfcbe35b2c26e79c>          669              669  100   [vm-pageshortage]  (daemon) (idle)
softwareupdatese <de50780fadc1346cb098360fbc076ee8>          888              888  100   [vm-pageshortage]  (daemon) (idle)
           timed <b75e87ae63123c45967d4355a43622bd>          256              256  100   [vm-pageshortage]  (daemon) (idle)
AppleIDAuthAgent <751b6effdac33accbc1ee71340f13f83>          161              161  100   [vm-pageshortage]  (daemon) (idle)
        routined <0bffecf27c643f6097a6f4c6f4750792>          307              307  100   [vm-pageshortage]  (daemon) (idle)
   wirelessproxd <9f112d11a5f734019013a43e9fc677a9>          197              197  100   [vm-pageshortage]  (daemon) (idle)
CloudKeychainPro <27adf62b48173ef1a95337713eba3a36>          163              163  100   [vm-pageshortage]  (daemon) (idle)
MobileGestaltHel <b783dda7a2a0327c93d85a7d94c93add>          162              162  100   [vm-pageshortage]  (daemon) (idle)
    mediaremoted <4734e15435133a48bdba8714c6b14782>          255              255  100   [vm-pageshortage]  (daemon) (idle)
        installd <168414caa0da34ed9b5f4bc5348f0a6a>          205              205  100   [vm-pageshortage]  (daemon) (idle)
        sandboxd <c084e37b88df32c6ae3f21516eb4803b>          114              114  100   [vm-pageshortage]  (daemon) (idle)
   medialibraryd <dce561c3a2ea3b8682f4e1ab1bc2166b>          392              392  100   [vm-pageshortage]  (daemon) (idle)
    mobileassetd <b7dae5ed4ac938fabd5f8fa28834e2f4>         1976             1976  200   [vm-pageshortage]  (daemon) (idle)
    itunesstored <0d023473a4a93c93a531210de784b155>         2236             2236  100   [vm-pageshortage]  (daemon) (idle)
         DuetLST <a8ba1e6da6bd390fb155000022a963eb>          589              589  100   [vm-pageshortage]  (daemon) (idle)
       accountsd <cb88b321caea305b819c78861c81b0c0>         1228             1228  100   [vm-pageshortage]  (daemon) (idle)
networkd_privile <ded764728f4d3166b5dcf2682afc97a8>           91               91  100   [vm-pageshortage]  (daemon) (idle)
   syncdefaultsd <8a5bc77b8e073d89b800a3b38240398c>          639              639  100   [vm-pageshortage]  (daemon) (idle)
         keybagd <191646aacbae3062b8471689120d732b>         1986             1986  100      [highwater]     (daemon) (idle)
            xpcd <140b5ddf31003794a1508a7bd32df86f>          353              353  100   [vm-pageshortage]  (daemon) (idle)
             lsd <1abde6d1af42396bbf166cc9e37ba914>          588              588  100   [vm-pageshortage]  (daemon) (idle)
       securityd <2b901d8dd49335ef82e69dd5b0ec70d3>          686              686  100   [vm-pageshortage]  (daemon) (idle)
       MobileSMS <fd98ac3fad52357e879f7fbd74f64bd1>         2907             2907  100                      (background)
      MobileMail <387c38c23acc32dc912a5088ef6b2b66>         1659             1659  100                      (resume) (continuous)
            tccd <a4190e0e6f6b3d23b06326c8935a5bb4>          207              207  100                      (daemon)
             kbd <4350c1efc23b3182809fcb6d8a7885fd>         1398             1398  200                      (daemon)
      librariand <f9e63967978833b585958d2d38f51e16>          562              562  100                      (daemon)
    MobileSafari <e7a0a9831f8c3339a9425f56f51e5005>       160202           160202  200  [per-process-limit] (frontmost) (resume)
identityservices <cd1fff47d6ad3b0f85cdc5fb39d8b53e>          708              708  100                      (daemon)
         syslogd <5c3a246617d3399e977efc84c2e29df2>          256              256   50                      (daemon)
           wifid <ca4f06468bf03d0f8847089e8cd320f1>          733              733   50                      (daemon)
         imagent <5080234127f5363fb539ffc3965af6e2>          711              711   50                      (daemon)
          powerd <a1fc82c399dc36e2b18a6fbb3d936a88>          157              157  100                      (daemon)
       locationd <10f268a18d5d3343ab21be48bb005ecf>         2313             2313  100                      (daemon)
    mediaserverd <f067d4c2a21a30fbabab30d9c94ccbd3>         1854             1854   50                      (daemon)
   iaptransportd <4c622f6c4295395997e7a6ec783b4623>          272              272  100                      (daemon)
   mDNSResponder <2b8ad561938f3fc0a6255b607f503040>          551              551  100                      (daemon)
            apsd <ceb7855af3a63c2682fab13d5e0aeb82>          764              764  100                      (daemon)
     dataaccessd <b155854105f531248c2a44fd3733d59e>         2579             2579  200                      (daemon)
        sharingd <550630f3f5dc3f0aa08ba04876d82e6d>          596              596   50                      (daemon)
      calaccessd <d6960604dc2c37499cd597b510055d7e>         1310             1310  200                      (daemon)
      assistantd <5abc7ba2f2073bc98f6e8902bd736604>          431              431  100                      (daemon)
     SpringBoard <fe632b47e4ee342baf4b3701cd11b242>        16602            16602   50                    
      backboardd <2f84882cf3693dfb921f4e0d38966f50>       118268           118268   50                      (daemon)
       fseventsd <a0223d346d4431a5ba1caabf8505b40e>          899              899   50                      (daemon)
         configd <bb6e02e801a93ef896f2f3cf5cbb00fe>          904              904   50                      (daemon)
       lockdownd <e280cf66209e3be980809a7d93eea76e>          270              270   50                      (daemon)
    fairplayd.A2 <f788338420e63532960518b7b1333967>          151              151  100                      (daemon)
      aggregated <6189b3e3d0c83a879b99cf7cd566dffb>          651              651  100                      (daemon)
        BTServer <3669aefbfb2e3577b17bde9598feda76>          477              477  100                      (daemon)
       distnoted <c40569cbea09312b9310bc74cbc88e29>          162              162  100                      (daemon)
  UserEventAgent <0d33b64c0c003a65b9a87c6622921781>          747              747   50                      (daemon)
        networkd <c7aa87e0c2d33d379a09598281a5e3ee>          837              837  100                      (daemon)
filecoordination <72a4cec360d435c09cb83d2316317288>          267              267  200                      (daemon)
             ubd <231dc91e9b11307eb98874f9bbfaa86c>          806              806  100                      (daemon)
EscrowSecurityAl <e14ee8c5bc0f3447b6cdaad44ab402da>          253              253  200                      (daemon)
          cplogd <96828e7047bf36e2a1cdffcc1be700f8>          142              142  100                      (daemon)
     touchsetupd <0c315f01ae8d3675ad1a4eda4c9b18bb>          204              204  200                      (daemon)
     pasteboardd <6a060fcef15735f6884cc7e7f388d7bb>          154              154  100                      (daemon)
  CFNetworkAgent <b3f94f89c0be3328a59f4e25598a92b4>          173              173  100                      (daemon)
CommCenterClassi <07176c24dea131eb9343ae8360139c51>          529              529   50                      (daemon)
         notifyd <bd919e93d6293562af0b7ec0e21247a0>          252              252  100                      (daemon)
 
**End**

0
Accepted
Petyo
Telerik team
answered on 03 Mar 2014, 07:46 AM
Hello Kerry,

an alternative approach which comes to mind is to use the data-bound mode of the scrollview. In data-bound mode, only 3 total pages of the scrollview will be present in the DOM (previous, current, next). This should reduce the total amount of DOM elements and avoid the memory warning. 

Regards,
Petyo
Telerik
Join us on our journey to create the world's most complete HTML 5 UI Framework - download Kendo UI now!
Tags
ScrollView (Mobile)
Asked by
Kerry
Top achievements
Rank 1
Answers by
Alexander Valchev
Telerik team
Kerry
Top achievements
Rank 1
Petyo
Telerik team
Share this question
or