1

I want to programmatically differentiate between iPhone4 and iTouch4. Here is what I have tried :

+(BOOL) isIphone4 {
     if ( ![ImagePicker isIpodTouch4] ) {
          return NO;
     }

     if ([UIImagePickerController respondsToSelector:@selector(isFlashAvailableForCameraDevice:)]) {
          if ([UIImagePickerController isFlashAvailableForCameraDevice:UIImagePickerControllerCameraDeviceRear]) {
               return YES;
          }
     }
     return NO;
}

+(BOOL) isIpodTouch4 {
     if ([UIImagePickerController respondsToSelector:@selector(isCameraDeviceAvailable:)] ) {
          if ([UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceFront]) {
               return YES;
          }
     }
     return NO;
}

However, seems like iPod Touch 4 is also passing the test for iPhone4. Does anyone have any ideas?

Thanks.

BoltClock
  • 700,868
  • 160
  • 1,392
  • 1,356
psanketi
  • 11
  • 4

1 Answers1

1

This is similar:

Determine device (iPhone, iPod Touch) with iPhone SDK

The code example included allows you to tell the exact device.

Community
  • 1
  • 1
Ben
  • 2,982
  • 1
  • 16
  • 12