POCKETEARTH

Version 1.5 Crashing

Home All Topics Bugs Version 1.5 Crashing

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #4084
    XOMTOR
    Moderator
    • Topics: 22
    • Replies: 118

    First off let me state that I think this is an amazing little piece of software and I’m writing this in hopes that it will eventually become even better. So with that said, let’s get down to it, the crashing that is.

    Fortunately, it’s easy to understand why the app is crashing and it’s entirely a RAM issue; the app is very naughty when it comes to RAM management. For example, I can launch the app with 130MB free, no other apps running ( and only 22 background processes) and immediately after launching, my iPod 4g will be down around 60MB; basically 70MB consumed just launching. Now zoom in once or twice and RAM is now around 35MB free. Here comes the kicker: open the “settings” menu and it’s not out of the ordinary for available RAM to drop to 15MB.

    Now RAM consumption in itself wouldn’t be a bad thing but the app is also very reluctant to give any of it back. In the example of opening the settings menu, this should be a perfect opportunity to give some back. It does in the odd instance but more often than not, the app just continues to gobble up RAM like I’ve never seen before. Of course at around 8-10MB free, the app will crash and need to be relaunched; it’s the textbook example of a memory Hog.

    So this app probably runs “okay” on the iPhone 4s, 5 and newest iPad but anything older and it’s not the smoothest experience to put it mildly. Fortunately, it’s pretty easy to replicate. I actually noticed this with the Lite version but found the app so nice in regards to everything else, I decided to plunk down my $2.99 anyway. Here’s hoping that the devs can look into this and get the memory management under control.

    #4617
    GeoMagik
    Admin
    • Topics: 32
    • Replies: 799

    Thanks for the feedback, XOMTOR! We will look into the memory issues further, but are a bit surprised by it.

    PocketEarth does consume a large amount of memory, but it should be within reasonable limits. This is mostly due to it keeping a large amount of map tiles and map data in memory which improves performance and battery life by not having to reload from disk as often. If iOS tells PocketEarth that the system is low on memory, it can generally free up 40-60MB quickly. We carefully profile the app for memory leaks before every update we release, and have a handful of 3rd gen iPods and 1st gen iPads that we use for stress testing it.

    We have noticed an iOS “memory fragmentation” issue where the device if it hasn’t been rebooted in a long time (over 1-2 months), it is unable to provide PocketEarth with its memory requests causing it to crash. Please open the app multi-tasking bar and close all apps, then power off the device, and turn it on again. If you still see frequent crashing, please let us know what location you are looking at on the map, and what iOS version you are running so we can investigate further!

    Also, how are you getting this info about memory usage? We use very precise tools that Apple provides us with, and our numbers don’t seem to match what you are saying. For example, PocketEarth should always launch to 37MB standing memory usage, plus the map data cache which varies based on map location and zoom level, but generally means 50MB total RAM usage at launch. Generally, what we seen is that PocketEarth will get up to around 90MB of RAM usage, get a memory warning, and immediately drop back down to ~50MB. The Settings screen uses exactly 1.6MB when opened the first time (which is retained even after closing it, but probably should be released).

    #4625
    XOMTOR
    Moderator
    • Topics: 22
    • Replies: 118

    Thanks for replying Geo. My device is an iPod Touch 4g – 32GB model running iOS – 5.1.1 (jailbroken). The app I’m using to display RAM stats is SBSettings which correctly displays “free” and “inactive” memory.

    I’ve included a video I recorded to demonstrate the behavior. The iPod was restarted prior to the recording so it was a fresh restart. In regards to the “jailbreak”, the only tweaks I have on are SBSettings which was installed to monitor RAM. I don’t use any other tweaks such as Winterboard and in fact, no custom themes, no interface tweaks; my icons are all stock and even my wallpaper is the stock bubbles one. The only reason for my jailbreak is to gain access to two legit apps: ProTube and StyleTap (PalmOS emulator). Anyway, just to rule out the possibility that the jailbreak could somehow be interfering, I rebooted the device in “safe mode” which essentially runs the device as if it were stock; the app crashed just the same (although obviously I wasn’t able to track the RAM usage that time).

    Anyway, here’s the video (location is Vancouver, Canada):

    http://www.youtube.com/watch?v=lGDM6qqp6_Y

    Here’s the crash log shown in the video. As you can see, there’s next to nothing running:

    Incident Identifier: 0E308793-4D1D-4617-84C3-D6C20F66B2E4
    CrashReporter Key: 6f09cde708f656233c5afa13b4517927ff0699ba
    Hardware Model: iPod4,1
    OS Version: iPhone OS 5.1.1 (9B206)
    Kernel Version: Darwin Kernel Version 11.0.0: Sun Apr 8 21:51:26 PDT 2012; root:xnu-1878.11.10~1/RELEASE_ARM_S5L8930X
    Date: 2013-05-08 18:24:59 -0300
    Time since snapshot: 89 ms

    Free pages: 695
    Active pages: 940
    Inactive pages: 1416
    Throttled pages: 48317
    Purgeable pages: 0
    Wired pages: 12270
    Largest process: SpringBoard

    Processes
    Name UUID Count resident pages
    PocketEarth < 08b108a0650f3c12869a2056aa50a168> 10163 (jettisoned) (active)
    notifyd < f6a9aa19d33c3962aad3a77571017958> 170
    BTServer < 31e82dfa7ccd364fb8fcc650f6194790> 225
    CommCenterClassi < 041d4491826e3c6b911943eddf6aaac9> 287
    SpringBoard < c74dc89dec1c3392b3f7ac891869644a> 11330 (active)
    aggregated < a12fa71e6997362c83e0c23d8b4eb5b7> 304
    apsd < e7a29f2034083510b5439c0fb5de7ef1> 217
    configd < ee72b01d85c33a24b3548fa40fbe519c> 286
    dataaccessd < 473ff40f3bfd3f71b5e3b4335b2011ee> 1132
    fairplayd.N81 < 32fbd294ec02341e8c89570445ba4b67> 144
    fseventsd < 914b28fa8f8a362fabcc47294380c81c> 143
    iapd < 0a747292a113307abb17216274976be5> 346
    imagent < 9c3a4f75d1303349a53fc6555ea25cd7> 319
    locationd < cf31b0cddd2d3791a2bfcd6033c99045> 419
    mDNSResponder < 86ccd4633a6c3c7caf44f51ce4aca96d> 7351
    mediaremoted < 327f00bfc10b3820b4a74b9666b0c758> 203
    mediaserverd < f03b746f09293fd39a6079c135e7ed00> 509
    lockdownd < b06de06b9f6939d3afc607b968841ab9> 201
    powerd <133b7397f5603cf8bef209d4172d6c39> 130
    wifid < 3001cd0a61fe357d95f170247e5458f5> 247
    sbsettingsd < e9a2c6b3c8a722b2bae7541bb247b81d> 219
    UserEventAgent < dc32e6824fd33bf189b266102751314f> 332
    launchd < 5fec01c378a030a8bd23062689abb07f> 122

    **End*

    It’s all very odd since I don’t think I’ve experienced an app crash in months; even Facebook doesn’t crash for me and it’s notorious for that. I’ve also had NavFree Canada and Topo Maps installed for quite some time and neither of those exhibit any erroneous behavior either.

    #4627
    GeoMagik
    Admin
    • Topics: 32
    • Replies: 799

    Wow, thanks for the video and the detailed information, we will definitely look into this soon!

    I do notice that SpringBoard is using 11330 resident pages of memory (44.3 MB of RAM), even more than PocketEarth at time of crash! This seems oddly high for a process which is only responsible for drawing the app icons on the home screen. But its probably (hopefully) not related to the jailbreak, and of course nothing we can do about it :/

    For the time being, I’d recommend turning off the Proximity Caching option in the Advanced Settings of our app. This should save some memory and at least reduce the frequency of the crashes. We will look into the memory issues, and hopefully have at least some improvements to it in the next couple of weeks.

    #4633
    XOMTOR
    Moderator
    • Topics: 22
    • Replies: 118

    Hey Again Geo. I’ve been doing quite a bit of Google’ing the past few
    days and it appears that having Springboard listed as the largest App at
    the time of the crash isn’t out of the ordinary. I found a really great
    developer blog at:

    http://www.raywenderlich.com/23704/demystifying-ios-application-crash-logs

    One particular quote of interest:

    “Usually, the largest process and the frontmost app are the same, and
    are also the process that has caused the low memory crash. But you may
    see some instances where the largest process and the frontmost app are
    not the same. For example, if the largest process is SpringBoard,
    ignore it, because SpringBoard is the process that shows the apps on
    the home screen, the popups that appear when you double tap the home
    button, etc. and is always active.

    When low memory situations happen, iOS sends a low memory warning to
    the active application and terminates background processes. If the
    frontmost app still continues to grow in memory, iOS jettisons it.”

    Here’s another crash log of mine and this time Pocket Earth was the largest process:

    Incident Identifier: 13E593E3-8C42-4AB4-A596-1601929B3E09
    CrashReporter Key:   6f09cde708f656233c5afa13b4517927ff0699ba
    Hardware Model:      iPod4,1
    OS Version:          iPhone OS 5.1.1 (9B206)
    Kernel Version:      Darwin Kernel Version 11.0.0: Sun Apr  8 21:51:26 PDT 2012; root:xnu-1878.11.10~1/RELEASE_ARM_S5L8930X
    Date:                2013-05-09 14:20:24 -0300
    Time since snapshot: 73 ms

    Free pages:        439
    Active pages:      1665
    Inactive pages:    923
    Throttled pages:   48480
    Purgeable pages:   0
    Wired pages:       11992
    Largest process:   PocketEarth

    Processes
             Name                 UUID                    Count resident pages
         PocketEarth < 08b108a0650f3c12869a2056aa50a168>   13958 (jettisoned) (active)
         SpringBoard < c74dc89dec1c3392b3f7ac891869644a>    8186 (active)
             notifyd < f6a9aa19d33c3962aad3a77571017958>     168
            BTServer < 31e82dfa7ccd364fb8fcc650f6194790>     208
    CommCenterClassi < 041d4491826e3c6b911943eddf6aaac9>     293
          aggregated < a12fa71e6997362c83e0c23d8b4eb5b7>     313
                apsd < e7a29f2034083510b5439c0fb5de7ef1>     240
             configd < ee72b01d85c33a24b3548fa40fbe519c>     281
         dataaccessd < 473ff40f3bfd3f71b5e3b4335b2011ee>    1022
       fairplayd.N81 < 32fbd294ec02341e8c89570445ba4b67>     143
           fseventsd < 914b28fa8f8a362fabcc47294380c81c>     184
                iapd < 0a747292a113307abb17216274976be5>     336
             imagent < 9c3a4f75d1303349a53fc6555ea25cd7>     314
           locationd < cf31b0cddd2d3791a2bfcd6033c99045>     518
       mDNSResponder < 86ccd4633a6c3c7caf44f51ce4aca96d>    7354
        mediaremoted < 327f00bfc10b3820b4a74b9666b0c758>     204
        mediaserverd < f03b746f09293fd39a6079c135e7ed00>     567
           lockdownd < b06de06b9f6939d3afc607b968841ab9>     214
              powerd < 133b7397f5603cf8bef209d4172d6c39>     126
               wifid < 3001cd0a61fe357d95f170247e5458f5>     285
      UserEventAgent < dc32e6824fd33bf189b266102751314f>     328
             launchd < 5fec01c378a030a8bd23062689abb07f>     128

    **End**

    Here’s another example of an App that crashed but listed SpringBoard as the largest process:http://stackoverflow.com/questions/11851271/ios-app-being-killed-jettisoned-by-mediaserverd-memory-issue-leak-while-str

    In regards to the Jailbreak, I don’t think it’s related as I booted
    into safe mode which essentially disables everything and Pocket Earth
    was still “jettisoned”. I also tried turning off “Proximity Caching” as
    you suggested and there was no change. The more I play around with it,
    I’m inclined to believe it has something to do with going into and out
    of the menus or using the UI buttons alone the bottom. If I just browse
    around and zoom in and out on the map, it takes much longer to crash; but opening up the menu, it seems to grab a chunk of RAM and rarely does it give it back upon exiting.

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.

Geomagik LLC


Contact Us

If you have any questions, comments or suggestions, we'd love to hear them!
Please fill out the form below or post to our Forum.

    PocketEarth © 2012 GeoMagik LLC. All rights reserved. Apple, the Apple logo, iPod, and iTunes are trademarks of Apple Inc., registered in the U.S. and other countries. iPhone is a trademark of Apple Inc.