-2

I'm making an application that tells the user what kind of iOS device they are using and then tells them the device's capabilities. Below is some example code:

case UIDevice1GiPhone: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
case UIDevice3GiPhone: return UIDeviceSupportsGPS | UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
case UIDeviceUnknowniPhone: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;           
case UIDevice1GiPod: return 0;
case UIDevice2GiPod: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone;
case UIDeviceUnknowniPod: return 0;
case UIDevice3GSiPhone: return UIDeviceSupportsGPS | UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;

This is exactly the kind of stuff I'm looking for. The first line means that the 1st Generation iPhone has a built in speaker, a built in camera, it supports an external microphone, etc. Does anybody know where I can get a complete list like this for all of the devices? The list I have is missing: iPhone 4, iPhone 4s, 3rd gen iPod, 4th gen iPod, and all generations of the iPad. Thank you.

Sean Smyth
  • 1,509
  • 3
  • 25
  • 43
  • 1
    Refrain from introducing custom constants/defines/functions/classes that start with UI... – Till Sep 10 '12 at 23:38
  • @matt - I think you misunderstood the OP; he's asking how to get the properties of the iDevice that the app is running on. For example, if I download this application, the application will tell me whether I have a built-in speaker, camera, etc. – pasawaya Sep 11 '12 at 02:40
  • @qegal I think *you* misunderstand the OP. Look at his code. He is not introspecting the device; he's writing an encyclopedia of model capabilities, similar to [MacTracker](http://www.mactracker.ca). The problem is that he doesn't _know_ the model capabilities. – matt Sep 11 '12 at 22:14

1 Answers1

0

If you're looking for lists of capabilities, you might want to check out Wikipedia for iPhone model comparison, for iPod touch models, and and iPad technical specifications.

You can also google the specific device you're looking for plus the word "specifications" (e.g. "iPod touch 3rd generation specifications") and you'll generally get a ton of hits, often including a page on Apple's own site (e.g. see 3g touch specs here).

Rob
  • 415,655
  • 72
  • 787
  • 1,044