Is it possible to restrict an app to only run on an iPhone 4? I know you can have an iPad only app. And in iTunes Connect you used to be able to indicate an iPhone only app. But now in iTunes Connect it says that to restrict an app to certain devices one can use the Info.plist. Someone suggested that in the Info.plist if a FrontFacingCamera is required that would restrict it to iPhone 4. Is this the way to restrict an app to run on only on an iPhone 4?
As far as I know you can't do an AppStore restriction. However you can prevent you app from running on non-i4 devices. You can also write so in the app description, saying that you actually need i4 to run this app.
Sorry if I'm wrong.
Right now, you can test the [UIScreen mainScreen].scale
property. As of right this moment, only an iPhone 4 will return a "2" in that property.
You could check that out in your AppDelegate and bellyache appropriately if it appears you're running on unders-spec'ed hardware. Just bear in mind that if the next iPad gets a retina display (or the iPod Touch Steve will almost undoubtedly be announcing next week), that property will be "2" for them as well. But maybe that's ok--if you're supporting the iPhone 4 maybe the new iPod Touch should be supported as well? If it's really about the screen density, then you should test the screen density, not whatever else you can find to identify the device.