2 Replies
      Latest reply on Apr 12, 2018 4:45 AM by dirkdeboer
      dirkdeboer Level 1 Level 1 (0 points)

        We have a client that runs our app  in `guided access mode`.

        The app runs flawlessly for 2 days consecutively, but after that the iPad suddenly lags, sometimes crashes and reopens, and after that the screen goes black.

         

        If they press the home button the screen goes active with the app still running. if they close the app, reopen it and restart `guided access mode` the same thing will happen much sooner.

        A complete reboot is required, and after that the app will run flawlessly again for 2 days

         

        We've done extensive testing on our side, but are unable to reproduce the issue. Intensive usage of the app doesn't seem to trigger the issue sooner than 2 days. However if you use the app too little or not at all and it'll keep running fine.

         

        Does anyone know what might be happening here and how we can prevent it?

        To my knowledge an app shouldn't be able to break the Kiosk mode and let the device go to standby.

         

        Some general information:

        - The app was built with React Native

        - We use the Lottie library for animations and standard js timers to trigger certain events

        - Turning off some of the animations seems to postpone the 'crash'

        - The iPads are placed in a stand and use a nonstandard charging cable

        - I've monitored the app and was unable to find a memory leak

         

         

        I found an entry in the device logs that seems to happen alongside the issue, but I was unable to determine if it's a cause or a result of the issue.

         

            Date/Time:       2018-03-18 11:51:21.622654 +0100
            OS Version:      iPhone OS 11.2.6 (Build 15D100)
            Architecture:    arm64
            Report Version:  19
           
            Command:         AppName
            Path:            /private/var/containers/Bundle/Application/2CBF6CD5-361E-41B3-8BFD-B80F73360F49/AppName.app/AppName
            Version:         1.17 (12)
            Beta Identifier: FB6349BF-3B73-4519-8FE2-852CC4FFC82B
            Parent:          launchd [1]
            PID:             187
           
            Event:           wakeups
            Wakeups:         45001 wakeups over the last 299 seconds (150 wakeups per second average), exceeding limit of 150 wakeups per second over 300 seconds
            Action taken:    none
            Duration:        299.27s
            Steps:           119
           
            Hardware model:  iPad6,11
            Active cpus:     2
           
           
            Powerstats for:  AppName [187]
            UUID:            3A4499E3-13C5-361C-B591-1429A6E9F52A
            Start time:      2018-03-18 11:54:52 +0100
            End time:        2018-03-18 11:56:19 +0100
            Microstackshots: 119 samples (100%)
            Primary state:   89 samples Frontmost App, User mode, Effective Thread QoS User Interactive, Requested Thread QoS User Interactive, Override Thread QoS Unspecified
            User Activity:   0 samples Idle, 119 samples Active
            Power Source:    0 samples on Battery, 119 samples on AC
        
        • Re: iPad in guided access mode goes to standby after 2 days
          eskimo Apple Staff Apple Staff (11,475 points)

          We have a client that runs our app  in guided access mode.

          In actual Guided Access Mode?  Or in one of the various single app modes that the system supports?

          Note For a list of such modes, see the posts on this thread.

          It sounds like your app is triggering some sort of resource leak, although it’s hard to say whether that’s a leak in the app itself or a leak in the system that the app just happens to provoke.  If you run the app by itself, not in any sort of single app mode, for two days, does it also trigger the problem?  If so, it may be amenable to standard leak testing tools (like Instruments).

          I've monitored the app and was unable to find a memory leak

          To be clear, I’m talking about resource leaks in general, not just memory leaks.  There are lots of other resources you can leak that will make your app unhappy over time.  The system should prevent such leaks from affecting the system as a whole, but that protection is never perfect.

          Oh, and regardless of what else you do, if you have an app that can mess up the system as a whole such that only a restart clears the problem, that is most definitely a bug.  Please reproduce the problem and then trigger a sysdiagnose (see the instructions on our Bug Reporting > Profiles and Logs page), then file a bug report that includes that sysdiagnose.

          Share and Enjoy

          Quinn “The Eskimo!”
          Apple Developer Relations, Developer Technical Support, Core OS/Hardware
          let myEmail = "eskimo" + "1" + "@apple.com"

            • Re: iPad in guided access mode goes to standby after 2 days
              dirkdeboer Level 1 Level 1 (0 points)

              Thank you for your help.

              I did not receive an email update of your message, hence my late reply.

               

              The app runs in actual Guided Access Mode, we've thought about using single app mode as a possible solution for the issue, but have yet to try this.

              I ran instruments before, but only for a short period of time ( few hours). We'll set up an extended monitoring test to see what the resources do with a long(er) run.

               

              I'll also submit a bugreport with the steps mentioned above.

              Thanks again.