Настройте приложение для определения версии ОС.и iPhone или iPad - PullRequest
1 голос
/ 21 июля 2010
  1. Как я могу определить, работает ли мое приложение на iPhone или iPad, и в какой версии iOS оно работает?
  2. Можно ли использовать макросы препроцессора аналогично #if _OS4.0 или #if IPAD или что-то в этом роде?
  3. Это кошерный, или мне просто делать отдельные сборки для отправки?

Ответы [ 2 ]

2 голосов
/ 21 июля 2010

Обычно использование функций, основанных на версии ОС, является плохой практикой.

В соответствии с предложением используйте UI_USER_INTERFACE_IDIOM (), когда это возможно. Также используйте:

Class qlPreview = NSClassFromString(@"QLPreviewController");

и

UIScreen *mainScreen = [UIScreen mainScreen];
if([mainScreen respondsToSelector:@selector(scale)]){
     NSLog(@"screen scale: %f",[mainScreen scale]);
}

Однако иногда вы не можете избежать проверки версии системы.

1 голос
/ 21 июля 2010

UI_USER_INTERFACE_IDIOM () может использоваться для обнаружения устройства. Возможные возвращаемые значения:

  • UIUserInterfaceIdiomPhone
  • UIUserInterfaceIdiomPad

if( UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad ) {}

Существует также определение __IPHONE_3_2, которое может помочь:

#ifndef __IPHONE_3_2
    /* ... */
#elif
   /* ... */
#endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...