I am looking to ensure that my application does not consume too much memory on devices with limited resources. A few days ago, I used tools to determine how much memory my application was using, and I was getting about 4-8 megabytes for Live Bytes. Today, I am launching the Tools again, and for Live Bytes, about 30-35 megabytes. I do not believe that I have made any significant changes in my code between these two times.
My application uses MKMapView with custom overlay. I have been postponing the Xcode update for quite some time, and so I suspect that the difference might be that my iOS simulator was still using Google and not Apple maps a few days ago, until I updated Xcode.
As a small test, I created a new test application that has only MKMapView , nothing more, and ran tools on it. For Live Bytes, this application usually has about 50-90 megabytes, although it does not have special code - I just drag and drop n 'when you sketched MKMapView.
Whether it is intentional for Apple to use this large memory for new cards, I do not know. Perhaps the tile maps are divided between applications, and this is normal. In any case, this complicates the possibility of a reasonable approximation to how much Live Bytes I can safely use, given that the earliest offers are about 5-20 MB, and Apple MKMapView alone consumes 50-90 MB.
Is there another useful metric that I can do if I don't use Live Bytes now?
Edit: it looks like for others, this is a legitimate memory management problem and leads to an application crash: iOS6 MKMapView using a ton of memory, to the point of application crash, has anyone else noticed this?
ios6 instruments mkmapview
Bryce Thomas Nov 12 '12 at 9:18 2012-11-12 09:18
source share