Сделайте приложение для iPhone совместимым с iOS 3 - PullRequest
2 голосов
/ 29 декабря 2011

Я разрабатываю приложение для iPhone с использованием xcode 4, которое совместимо с iOS 4.3 и работает на устройстве iPhone 4 без проблем.У меня вопрос, как проверить, совместимо ли мое приложение с iOS 3 или нет.У меня нет устройства iOS 3 для запуска приложения, поэтому единственное решение - проверить совместимость для iOS 3 - это симулятор, но я не нашел никакой возможности запустить приложение на симуляторе iOS 3.Любое предложение, как установить SDK для iOS 3.Спасибо

Ответы [ 4 ]

2 голосов
/ 30 декабря 2011

Вот мой контрольный список для iOS 3:

  • убедитесь, что ваше приложение работает нормально на медленном процессоре и меньшем объеме памяти.
  • поддержка armv6. добавьте armv6 в архитектуры, удалите armv7 из требуемых возможностей устройства и отключите большой палец на armv6, если у вашего компилятора есть ошибка генерации кода.
  • не используйте ARC, поэтому (официально) не поддерживается на iOS 3.
  • проверка существования более нового метода (с responsedsToSelector :) или класса, вместо проверки версии ОС в большинстве случаев.
  • не использует распознаватели жестов, которые существовали в iOS 3, но были частным API и в которых отсутствуют важные методы. вам нужно обрабатывать сенсорные события вручную.
  • если вы используете блоки, вам нужно динамически связать системную библиотеку, и для этого требуется iOS 3.1 (я слышал, что iOS 3.0 не поддерживает динамическое соединение.)

Вот пример приложения: didFinishLaunchingWithOptions: method.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease];

    if ([self.window respondsToSelector:@selector(setRootViewController:)]) {
        self.window.rootViewController = self.viewController;
    } else {
        [self.window addSubview:self.viewController.view];
    }
    [self.window makeKeyAndVisible];
    return YES;
}
2 голосов
/ 29 декабря 2011

Единственный способ убедиться в совместимости - одолжить или купить устройство под управлением iOS 3 для тестирования. Симулятор, даже старый, недостаточно точен для обеспечения совместимости.

Если вы нигде не можете найти устройство, работающее под управлением 3.x, даже хотя бы на один час, зачем беспокоиться о совместимости с такой редкостью?

1 голос
/ 29 декабря 2011

Нажмите на проект, нажмите на цель, нажмите «Сводка», установите для цели развертывания значение 3.x. Затем раскрывающийся список Схема в верхней части XCode покажет вам варианты его запуска в симуляторах 3.x.

0 голосов
/ 29 декабря 2011

В Центре разработчиков iOS есть ссылка для скачивания на Xcode 3. Это может быть iOS 3.

...