Как отправить приложение OSX 10.7, совместимое с 10.6?

Я хочу создать приложение OSX, которое будет использовать некоторые из новых функций 10.7 SDK (точнее, покупки в приложении). Однако я не хочу полностью запрещать пользователям 10.6 устанавливать приложение.

Как мне сделать так, чтобы пользователи 10.7 имели доступ к новым функциям, а пользователи 10.6 просто не имели новых функций, но могли пользоваться базовыми вещами?

Когда я компилирую для 10.6, он не загружает SDK с «InApp», как и ожидалось. И я полагаю, что если я скомпилирую для 10.7, пользователи не смогут установить его из AppStore.


person Nathan H    schedule 15.08.2011    source источник


Ответы (3)


Вы можете использовать один из этих методов, чтобы определить версию ОС пользователя, а затем, если он использует Lion, запустите код, если это не так, не запускайте его (используйте оператор if)

Изменить: вам также придется слабо связать структуру storekit.

person Matt S.    schedule 16.08.2011

Не уверен, поможет ли это, но для более новых API (например, только для Lion) я просто использую оператор IF с responseToSelector:

Это один из способов, предложенных Apple, и вам не нужно возиться со знанием конкретной ОС во время выполнения.

person Arvin    schedule 04.12.2011

Не могли бы вы создать пакет, который мог бы загружаться и предлагать функции 10.7? Ваше реальное приложение может проверить, под какой ОС оно работает, и не загружать пакет 10.7. Я не знаю, сработает ли это, поскольку для пакета 10.7-SDK не было бы неразумным отказываться от загрузки в приложении 10.6 SDK.

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

person Chris Cleeland    schedule 16.08.2011
comment
Будут ли эти методы совместимы с представлением AppStore? - person Nathan H; 18.08.2011
comment
Извините... я не знаю. Я не знаю деталей квалификации AppStore. Я просто пытался продумать технические вопросы, а не деловые/политические вопросы. - person Chris Cleeland; 18.08.2011