MechDome — это новый инструмент разработчика, который автоматически конвертирует приложения Android в iOS и сохраняет все элементы пользовательского интерфейса и большую часть встроенных функций.
Кроссплатформенная разработка на протяжении многих лет представляла собой серьезную проблему для большинства независимых разработчиков. Довольно часто изучение нового языка программирования для переноса вашего приложения на другую платформу требует слишком много времени и ресурсов.
В течение многих лет именно этот факт распределения ресурсов подталкивал многих разработчиков в первую очередь сосредоточить свои усилия на iOS из-за большего количества прибыльный рынок. Благодаря таким проектам, как Ксамариноднако разработчики, знакомые с C#, смогли реализовать свои проекты на iOS, Android и Windows Mobile. Но разработчики Android больше всего знакомы с написанием на Java, поэтому для использования Xamarin разработчику потребуется ознакомиться с новым языком и платформой сборки. Мы рассмотрели один проект, направленный на устранение разрыва между мобильными операционными системами путем предоставления платформы перекрестной разработки для разработчиков Java —
Мультиоперационный движок Intel - но неизвестно, куда направляется этот проект. Вот где МехКупол приходит в.MechDome — это начинающая компания, базирующаяся в Калифорнии и зарегистрированная в январе. Она разработала инструмент преобразования для автоматически создавайте собственные приложения для iOS и OS X из вашего приложения для Android. Нет необходимости учиться использовать новую IDE или API. Все, что вам нужно сделать, это отправить APK-файл в MechDome (нет необходимости отправлять им исходный код), и полностью автоматизированный инструмент за считанные секунды скомпилирует отдельный двоичный файл для iOS и OS X, который разработчик затем сможет распространить в Apple App Store. Мы взяли интервью у основателя и генерального директора MechDome Марио Космискаса, чтобы увидеть демонстрацию инструмента в действии. работает. Хотя существуют некоторые ограничения из-за фундаментальных различий в работе iOS и Android. (о чем мы поговорим ниже), этот инструмент уже создал несколько действующих приложений в Apple App Store, таких как тот Открытый исходный код клиент Reddit RedReader и Открытый исходный кодСудоку клиент, чтобы доказать, что это работает.
Приложения Android для iOS с MechDome
Заявленная цель MechDome — позволить разработчикам конвертировать немодифицированное приложение для Android в собственное приложение для iOS или OS X. По сравнению с такими технологиями, как Intel Multi-OS Engine или Xamarin, разработчику Android не нужно знать как связать библиотеку Objective-C потому что инструмент сделает это за вас. Также нет необходимости использовать конструктор пользовательского интерфейса для изменения вашего приложения Android, поскольку MechDome обрабатывает преобразование всех элементов пользовательского интерфейса Android. Да, даже приложения для планшетов Android прекрасно переводятся в формат, подходящий для iPad.
Самое большое обещание MechDome заключается в том, что преобразованное приложение Android будет функционировать так, как это будет знакомо пользователям целевой ОС. Например, меню «Поделиться» в Android будет заменено собственным меню «Поделиться» в iOS и будет включать возможность использования AirDrop, если это применимо. Приложения, которые публикуют уведомления в Android, вместо этого будут отображать уведомление в Центре уведомлений iOS. Определенные намерения, такие как открытие камеры на Android, действительно откроют камеру на устройстве iOS, а намерения URL-адреса на Android вызовут Safari на iOS. Поставщики контента на Android, которые имеют доступ к контактам или календарю, вместо этого будут обращаться к соответствующим базам данных iOS или OS X для получения этой информации.
Но, как упоминалось ранее, у этого инструмента действительно есть некоторые ограничения, налагаемые природой работы iOS. Одна из самых больших проблем, с которыми сталкивается разработчик Android, желающий преобразовать свое приложение в iOS, — это то, как обращаться с фоновой службой. iOS гораздо более строга в отношении того, когда и какие фоновые службы могут запускать сторонние приложения, к лучшему или к худшему. Более того, богатая система намерений, присутствующая в Android и обеспечивающая взаимодействие между приложениями, практически отсутствует в iOS. Наконец, API сервисов Google Play в настоящее время не поддерживается, поэтому любое приложение, использующее сервисы Google, не будет работать. Таким образом, разработчики будут в основном ограничены функциональностью, доступ к которой осуществляется напрямую путем ручного ввода данных пользователем, что не должно представлять собой серьезной проблемы для большинства игр или приложений.
MechDome в использовании
В частной демо-версии инструмент действительно работает так, как рекламируется. Г-н Космискас продемонстрировал компиляцию нескольких полнофункциональных приложений для Android в работающие приложения для iOS и OSX. Всплывающие уведомления, уведомления в Центре уведомлений, веб-просмотр, доступ к местоположению, ввод текста и общая функциональность элементов пользовательского интерфейса — все это работало в демо-версии. Калькулятор AOSP, работающий на iOS, выглядел и работал точно так же, как на любом устройстве Android.
Также было показано обновление приложения и его перекомпиляция для iOS, причем процесс довольно простой. Разработчик, в данном случае г-н Космискас, продемонстрировал изменение текстового поля для отображения «XDA-Developers» в Android Studio. Затем он экспортировал приложение, создал подписанный APK и за считанные секунды скомпилировал двоичные файлы iOS и OS X с сервера MechDome. Когда приложение iOS запускалось с помощью эмулятора, изменения, внесенные в Android Studio, присутствовали.
В настоящее время MechDome проходит бесплатную общедоступную бета-программу. Разработчики могут зарегистрировать их приложение на веб-сайте MechDome, чтобы получить приглашение протестировать конвертацию своего приложения для Android. К сожалению, информация о ценах на услугу пока не разглашается. Тем не менее, это интересный проект, на который стоит обратить внимание, если вы разработчик Android и хотите в конечном итоге произвести фурор в экосистеме Apple, не затрачивая при этом особых усилий.