Как сделать приложение для iOS 4.0 совместимым с iPhone OS 3.1.3? - PullRequest
0 голосов
/ 20 августа 2010

Итак, я, возможно, допустил ошибку при обновлении моего приложения до iOS 4.0, стирая установку Xcode и устанавливая только SDK 4.0 (я даже не могу найти SDK 3.1.3 в своих резервных копиях, черт!).Теперь у меня есть приложение, которое было построено с базовым SDK 4.0, и оно говорит, что в iTunes требуется 4.0, но я добавил только методы -applicationDidEnterBackgroundState и -applicationDidBecomeActive (в основном просто скопировал и вставил код данных сохранения / загрузки-applicationWillTerminate и -viewDidLoad).Возможно ли, что я смогу перестроить приложение с целью развертывания iPhone OS, установленной на 3.1.3 в настройках сборки, и Apple позволит мне существенно понизить версию приложения?Должен ли я добавить в те операторы #If_Define, которые проверяют 4.0, чтобы он условно включил эти методы 4.0?

1 Ответ

0 голосов
/ 20 августа 2010

Нет, вам не нужно использовать операторы #ifdef.Вы можете вызывать метод как угодно - вопрос в том, вызовет ли его экземпляр UIApplication :).

Кроме того, я уверен, что ваши параметры развертывания будут решать проблему с iTunes.Таким образом, вы должны установить его на 3.1.3 (или 3.0, если это не требуется специально, многие люди, которых я знаю, не обновлялись между 3-мя, потому что было минимальное количество функций, и много раз это был по сути выпуск анти-джейлбрейка).

Что касается кода, я рассмотрел эту проблему следующим образом:

- (void) applicationWillTerminate:(UIApplication *)application
{
  // Just pass it on to the new iOS4 delegate
  NSLog(@"Application will terminate");
  [self applicationDidEnterBackground:application];
}

А для переднего плана у меня просто есть метод "загрузчик", который вызывается из application:didFinishLaunchingWithOptions:и applicationWillEnterForeground:.

Хорошо работает для моего программного обеспечения на моем 3G w / 3.0 (я отказываюсь обновляться после просмотра iOS4 на 3G!), а также на моем 3GS под управлением iOS4.

...