Приложение Xcode, построенное на 10.6, не будет работать на 10.5.8 - PullRequest
2 голосов
/ 03 марта 2011

Я новичок здесь и нов в мире XCode.

Я сделал простое приложение с Xcode 3.2 на Snow Leopard.Получившееся встроенное приложение работает на снежном барсе, однако на леопарде оно даже не запустится (10.5.8) - я получаю сообщение «Вы не можете использовать эту версию приложения с этой версией Mac OS X».Это нормально?

Или есть способ создать приложение, которое будет работать как на Snow Leopard, так и на Leopard?Пожалуйста, посоветуйте, так как у меня нет возможности узнать себя

Спасибо за любой вклад

1 Ответ

3 голосов
/ 03 марта 2011

Вам необходимо изменить цель развертывания в настройках сборки.Вам следует установить самую низкую версию OS X, для которой вы готовы предоставить поддержку.Вам следует установить для базового SDK последний доступный общедоступный SDK.

Если вы сделаете это, вы должны убедиться, что вы используете только новые API 10.6 только после выполнения проверок их существования во время выполнения.Для этого вы можете использовать такие функции, как NSClassFromString и respondsToSelector:.

. Любые фреймворки или библиотеки, которые являются новыми для 10.6, должны быть слабо связаны.Это предотвратит попытку приложения загрузить эти фреймворки на 10.5 и, таким образом, приведет к сбою программы, когда он не найдет фреймворки.

Все объяснено в Руководстве по совместимости SDK от Apple(Требуется (бесплатный) вход).

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