I'm starting to work on iOS apps at work, and I'm trying to determine the minimum version of iOS I'll need to support. We have a network registration system that gathers some basic information about devices on the network, but unfortunately, it doesn't report the version of the operating system or hardware.

I do, however, have MAC addresses for every iOS device used on our network in the past 12 months.

Is there a way to determine, based on a MAC address, what generation an iOS device is? If Apple used sequential addresses (or reserved specific blocks for specific devices), this should be possible.

I'll leave the above question (because I'm still curious if there's a way to do this), but I found another way to determine the hardware we have in use. Exchange server keeps track of devices each user syncs their email to. Assuming most iOS users sync their email accounts, I was able to use that information to determine what devices are in use. It turns out that about 20% of them are using devices that won't run iOS 5.

  • 5
    Have you considered just aiming for the minimum iOS version that has the features your application requires to work? If some units doesn't meet the requirements, doesn't that mean you couldn't really support them anyway? – Lasse V. Karlsen Jun 27 '11 at 18:48
  • Yes, of course. However, there are some very nice new development tools that are iOS 5-specific (I'm looking at you, Storyboarding). I'd like to use them, but I need to determine if it's feasible to support only iOS 5. (I'm guessing not, but I'd like to be surprised.) – Ben Wyatt Jun 27 '11 at 18:51
  • I am fairly new as an iOS developer (yeah, right, I fired up Xcode yesterday and suddenly I'm an iOS developer) but does those features produce iOS 5.0 code, or are they only available in the new Xcode version? I ask because I was under the impression that when iOS 5.0 is released as final, you'll have to build with the latest Xcode anyway. But, I might be talking out of my $!% now, I have no idea really :) – Lasse V. Karlsen Jun 27 '11 at 19:39
  • You might want to consider asking that as a separate question... – Odinulf Jul 13 '11 at 14:28
  • I did find a way to do this, but not by MAC address. We use Exchange Server for email, and it keeps track of all devices used to sync to email accounts. I had my sysadmin run scripts on the server to pull the device info. As it turns out, about 20% of iOS devices in use on our mail server are old enough to not support iOS 5. Almost 10% won't support iOS 4. This isn't a great sample (it leaves out the public and people on-campus who don't use their iOS devices for college mail), but it was the best we could do, given that we don't own most of the devices in use. – Ben Wyatt Jul 18 '11 at 15:25

No - it's not a good way to get that data.

I would have a look at some of the many MDM software packages to get your population data so you can plan. JAMF has a great reputation in that space for low cost of entry and high performing software.

Also - you could make a quick little app that simply reported in some basic stats. Your users will be clamoring for potential apps and those willing to run that app will feed you with the data needed.

You will find that making the app forces you to restrict many of the new features and in reality - you'll have to actively work to get 3.x support in a project you start today using the current Xcode 4. 4.0 will be easy and only the new 5.0 features will get you into having to test the levels and have two sets of code for different generations of device.

Your development will drive what devices people use and not the other way around. It's almost always cheaper to just upgrade devices than pay developers to keep the older code tested and running.

There are lots of great charts out showing what some devs are seeing for how fast people upgrade to the latest iOS versions.

| improve this answer | |
  • This would be a great answer if I was developing an app to be used exclusively on devices we own. Maybe I should have been more clear in my question, but that's not the case here. I work at a college, and the app I'm working on will be used by faculty, staff, students, alumni, visitors, donors, and curious outsiders. We only provide iOS devices to cabinet members and a few critical departments (shared devices). The question was a way for me to figure out what devices are in use on our campus, nearly none of which we (institutionally) own. (Read the comments above, though: I did figure it out.) – Ben Wyatt Jul 18 '11 at 15:22
  • Awesome use of exchange mail records!! I suppose I was trying to nudge you to see collecting this data has value to you - whether or not the devices are "yours" - that line in IT is more blurry now than ever. (but you already knew that in asking the question :-) – bmike Jul 18 '11 at 15:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .