2013-12-09 4 views
4

Было время, а не два года назад, когда you could didn't need Xamarin.Mac to deploy Mono apps to the Mac App Store. Чтобы быть ясным, это магазин для настольных приложений Mac OS X, а не приложений для iOS.Является ли Xamarin Studio абсолютно необходимым для выхода приложений Mono на Mac App Store и MonoMacPackager устаревшим?

Теперь страница MonoMacPackager says the following:

Если вы хотите создать самодостаточные Mac пакеты или опубликовать программное обеспечение для Mac AppStore, вы должны получить Xamarin.Mac, который является надмножеством MonoMac ,

Я не видел хорошего учебника о том, как выпустить в Mac App Store с момента выхода Xamarin.Mac. Является ли Xamarin.Mac «обязательным», так сказать, выпуском приложений Mono на Mac, которые имеют пользовательские интерфейсы, написанные на XCode/IB? Или это «подмножество», которое MonoMac еще достаточно для создания этих гибридных приложений?

Я понимаю, что могу писать против GTK # или Windows.Forms, а пользователи сами устанавливают Mono - или используют bockbuild, как Banshee, все еще есть и имеют что-то самодостаточное - для создания автономных приложений. Вместо этого я заинтересован в возможности использования интерфейса Mono с собственными пользовательскими интерфейсами, созданными в XCode, и для выпуска этих приложений в Mac App Store.

Я также понимаю, что есть шаблон для проектов с открытым исходным кодом в Xamarin Studio, который на самом деле пугает меня. Похоже, что полное лечение ушло за платной платой Xamarin.

Иными словами, является ли MonoMacPackager устаревшим в отношении выпуска приложений Mono с пользовательскими интерфейсами, которые передают Mac App Store?

+0

Мое понимание (и я могу ошибаться) заключается в том, что требуется лицензия Xamarin.Mac, если вы хотите подписывать приложения, что требуется в App Store. Для распространения за пределами App Store вы можете использовать MonoMac. – Jason

+1

Спасибо. Я знаю, что раньше вы могли использовать [используя ** только ** MonoMac] (http://monodevelop.com/Download/What's_new_in_MonoDevelop_3.0#New_MonoMac_Addin), поэтому, если вы говорите правду, это по крайней мере wasn Сначала это дело. На самом деле это мой вопрос - по крайней мере, была ли текущая поддержка того, что было частью проекта с открытым исходным кодом, позади платной стены? – ruffin

ответ

5

Дело в том, что для выхода в Mac App Store ваше приложение должно быть самодостаточным. Это означает, что вам нужно использовать mkbundle, что, в свою очередь, означает, что лицензия на время выполнения Mono будет загрязнять все. Эта лицензия LGPL.

Если ваше приложение не может юридически связываться с требованиями LGPL, вам нужна лицензия Xamarin.Mac.

Теперь, если вы считаете, что ваше приложение может юридически привязываться к требованиям LGPL, тогда сделка немного сложнее: вы уверены, что можете? Поскольку многие статьи там говорят о том, что теоретические ограничения ToS Mac App Store противоречат лицензиям GPL/LGPL.

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

ОБНОВЛЕНИЕ: Оказывается, существует разница в том, как вы используете mkbundle, read more here. (И обратите внимание: у Mac App Store есть разные ограничения, чем у iOS AppStore, я думаю.)

+0

Просто, чтобы быть ясным, вы [спорите о проблеме LGPL и Java] (http://www.gnu.org/licenses/lgpl-java.html), правильно? Я считаю, что они очистили это [переход к MIT] (http: // mono-project.com/FAQ: _Licensing) - см. «Почему библиотеки классов лицензируются по лицензии MIT X11?» И хотя «инструменты» - это GPL (что такое mkbundle?), Я думаю, вы можете копировать документы, написанные с помощью emacs. Но я слышу, что вы говорите, что вы верите [юридически, может быть, только с открытым исходным кодом]. Моно приложения могут быть созданы App Store без Xamarin. Это правильно? Откуда у вас эта информация/как вы это сделаете сейчас? Спасибо. – ruffin

+3

Библиотеки классов - это X11, но время выполнения - нет. Вам нужна совместимая лицензия для среды выполнения от Xamarin, которая поставляется с Xamarin.Mac. – TheNextman