На iPhone или iPod Touch:
UIDevice *device = [UIDevice currentDevice];
NSString *systemName = [device systemName];
Чтобы определить версию ОС:
UIDevice *device = [UIDevice currentDevice];
NSString *systemVersion = [device systemVersion];
Чтобы обнаружить конкретную модель, вам необходимо проверить наличие некоторых возможностей, которые есть только у этой модели, поэтому для обнаружения iPhone 3GS проверьте наличие видео на камере:
#define SOURCETYPE UIImagePickerControllerSourceTypeCamera
// does the device have a camera?
if ([UIImagePickerController isSourceTypeAvailable:SOURCETYPE]) {
// if so, does that camera support video?
NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:SOURCETYPE];
bool isA3GS = [mediaTypes containsObject:kUTTypeMovie];
}