Я думаю, вам следует сосредоточиться на предпочтительном режиме отображения, а не на обнаружении iPhone5. Кто знает, какие устройства Apple будет производить, но если ваше программное обеспечение поддерживает этот режим, оно будет надежным в будущем.
В будущем люди могут захотеть изменить предпочтительный режим отображения на лету. Например, отключите AppleTV от 720p ТВ и подключите к 1080p, не перезагружая приложение, конечно.
Ответ 3
Добавьте этот код в свой исходный код:
if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone){
if(UIScreenOverscanCompensationScale==1136/640){
//move to your iphone5 storyboard
[UIStoryboard storyboardWithName:(NSString *) bundle (NSBundle *)];
}
else{
//move to your iphone4s storyboard
[UIStoryboard storyboardWithName:(NSString *) bundle (NSBundle *)];
}
}
Это был ответ, отправленный мной в другом вопросе здесь.
Ответ 4
Добавьте этот код в заявку:
if ([UIScreen mainScreen].scale == 2.f && screenHeight == 568.0f)
{// iPhone 5 code}
else
{// previous version code}