Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Available memory for iPhone OS app

Tags:

Is there a function or constant defining the amount of available memory for an app in iPhone OS?

I'm looking for a device-independent way (iPod touch, iPhone, iPad) to know how much memory the app has left.

like image 514
hpique Avatar asked May 09 '10 18:05

hpique


People also ask

How much storage does iPhone OS use?

"System" can be widely different sizes, sometimes it's 7GB, but it can also easily be 10GB, 15GB or even 25GB. For example, if you're using a 16GB iPhone, the system would be 4GB while the system for 64GB iPhone would be 9GB. The system storage will also change every times when you make an iOS update.

How do I get more memory for iOS?

How to upgrade on your iPhone, iPad, or iPod touch. Go to Settings > [your name] > iCloud > Manage Storage or iCloud Storage. Tap Buy More Storage or Change Storage Plan. Choose a plan and follow the onscreen instructions.


1 Answers

This function will return the available memory in bytes:

#import <mach/mach.h>  #import <mach/mach_host.h>  natural_t  freeMemory(void) {     mach_port_t           host_port = mach_host_self();     mach_msg_type_number_t   host_size = sizeof(vm_statistics_data_t) / sizeof(integer_t);     vm_size_t               pagesize;     vm_statistics_data_t     vm_stat;      host_page_size(host_port, &pagesize);      if (host_statistics(host_port, HOST_VM_INFO, (host_info_t)&vm_stat, &host_size) != KERN_SUCCESS) NSLog(@"Failed to fetch vm statistics");      natural_t   mem_used = (vm_stat.active_count + vm_stat.inactive_count + vm_stat.wire_count) * pagesize;     natural_t   mem_free = vm_stat.free_count * pagesize;     natural_t   mem_total = mem_used + mem_free;      return mem_free; } 
like image 64
Ben Gottlieb Avatar answered Sep 19 '22 15:09

Ben Gottlieb