Thanks for the fast reply Paul.
Rumor has it that iOS 5 has a new set of vibration features. I haven't messed with 5 yet, I'm not big on beta versions, but the new features look like they could be very useful.
http://http://forums.macrumors.com/showthread.php?t=1166825
That said, you are correct, and apple will reject you in a heartbeat if you try to use vibration on a non-supported device. I learned that one the hard way. Now I always check for which device is being used first.
NSString *deviceType = [[UIDevice currentDevice] model];
BOOL canVibrate = NO;
if ([deviceType isEqualToString:@"iPhone"]) {
canVibrate = YES;
}
else if ([deviceType isEqualToString:@"iPhone 3G"]) {
canVibrate = YES;
}
else if ([deviceType isEqualToString:@"iPhone 3G S"]) {
canVibrate = YES;
}
else if ([deviceType isEqualToString:@"iPhone 4"]) {
canVibrate = YES;
}
The downside is that every time Apple releases a new supported device, I have to update all of my apps.