Если вы сделаете приложение для iPhone универсальным, сможете ли вы отменить его в будущей версии? - PullRequest
4 голосов
/ 08 июля 2010

Я сделал универсальное приложение для iPhone / iPad (только с iPhone), но в следующей версии я собираюсь в значительной степени переключиться на функции iOS 4.

Для следующего обновлениямоего приложения, я могу обновить только версию iPhone?

Ответы [ 2 ]

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

Поскольку iPad работает на iOS3.2, ваш код должен обрабатывать оба.

if ([[UIDevice currentDevice].systemVersion isEqualToString:@"4.0"]) {
  [self doOs4Stuff];
} else {
  [self doOs3Stuff];
}

Несмотря на то, что вы должны быть осторожны с использованием API, специфичных для 4.0, загружайте классы с помощью трюков, таких как NSClassFromString(), чтобы предотвратить его падение в старых версиях ОС.

Мой пример может также использовать более надежную проверку версий, может анализировать строку для проверки, например, основной версии "4" или "3".

0 голосов
/ 08 июля 2010

Вам необходимо обновить оба приложения, так как они объединены в один двоичный файл. Однако, используя условное кодирование (например, if !(UIUserInterfaceIdiom() == UIUserInterfaceIdiomPad) { - обратите внимание, что я всегда проверяю iPhone / iPod Touch таким образом, как в OS 3.1.3 или ниже, он ничего не возвращает), вы можете сделать так, чтобы была только версия iPad отличается.

Что касается изменения, сделав его универсальным - перейдите в настройки своего проекта и целевых параметров и измените «Назначение целевого устройства» на iPhone или iPad. Опция повышения цели должна появиться снова.

...