Суббота, 2017-11-25, 5:05 PM

Поиск
Меню
Категории раздела
Поддержи проект!
Рекомендуем


iOS замечания

Последние обновления Xamarin вызывает нарушения в работе Mono 3.0 на libgdx iOS back-end. Точнее, оно нарушает работу IVKM Monotouch, на которой выполняется JVM байт-код в iOS. Уже ведутся работы по исправлению большинства причин, но еще есть некоторые препятствия на пути к полноценной рабочей версии, которая требует содействия Xamarin.

Так как каждое новое обновление Xamarin нарушает работу iOS backend, то это решение не может дальше продвигаться. По этой причине было объявлено, что iOS backend базирующийся на Xamarin устарел. Вот что будет дальше:

  • В ближайшее время будет выпущена 0.9.9 версия, содержащая стабильный IKVM Monotouch порт совместимый с предыдущими версия Xamarin iOS (6.2.7.1).
  • Размещение релиза будет происходить как обычно, любые признаки Xamarin back-end будут удалены из репозитория, а так же системы сборки.
  • Буду создана замена setup-ui, которая уже давно в этом нуждается и будет обновлена соответствующая документация.
  • Если вы в настоящее время работает над игрой, вам не следует обновлять iOS Xamarin до последней версии. Используйте libgdx версию 0.9.8 или предстоящую 0.9.9 версию или любую nightly версию между этими двумя версиями. Если вы уже обновили Xamarin iOS, вы можете сделать откат до рабочей версии (6.2.7.1 pkg), как описано в этом решении.
  • Начнется упаковка RoboVM back-end начиная с 0.9.9 версии, которая должна сейчас быть на равно с Xamarin back-end, благодаря большой и тяжелой работе создателя RoboVM. Вы будете иметь возможность портировать вашу игру на этот back-end без особых проблем.

Вот минусы и плюсы этого изменения:

минусы

  • Производительность RoboVM сейчас еще не таком уровне как Xamarin. Этого должно быть достаточно для многих игр. Сейчас происходит создание тестов производительности для оценки качества.
  • В настоящее время отладка не поддерживается в RoboVM. Вам придется прибегнуть к использованию printf.
  • Еще пока еще нет RoboVM приложения в App Store. Однако, RoboVM компилируется в нативный код, как Xamarin или Flash, и маловероятно, что Apple отклонит приложение скомпилированное через RoboVM.

плюсы

  • Меньше слоев абстракций, RoboVM является выделенной виртуальной машиной запускающей байт-код.
  • Полная поддержка библиотеки классов, поддерживаются те же классы Java что и в Android (минус Android конкретных API, конечно).
  • Интеграция среды разработки и Maven, причем в настоящее время впервые есть ограничения на Eclipse. Вы работается так же как с Desktop, Android и GWT проектами.
  • Постепенная сборка, больше нет много-минутных ожиданий развертывания на реальные устройства.
  • Полностью свободный и открытый исходный код, вам всего лишь нужно иметь Mac и лицензию Apple разработчика.