Трудности переноса Android-приложений на Windows 10
На конференции BUILD в этом году компания Microsoft представила два подобных друг другу проекта, Astoria и Islandwood, которые помогут разработчикам приложений для Android и iOS перенести свои программные продукты в магазин приложений для Windows. Это означает, что приложения, доступные для Android и iOS, пополнят экосистему Windows 10 Mobile и сделают эту операционную систему более подходящей для современного пользователя, привыкшего к определенному набору программного обеспечения. Ранее в Microsoft рассказали о самой сути поддержки платформой Windows 10 приложений для Android и iOS. Впрочем, это не совсем поддержка, а упрощенная возможность переноса приложений. При этом для переноса iOS-приложений разработчикам придется прикладывать меньше усилий, чем при обеспечении совместимости Android-приложения с Windows 10 Mobile.
В зависимости от реализации этого подхода, идея Microsoft может оказаться как блестящей, так и бессмысленной. В опубликованной ресурсом Tom«s Hardware заметке Люсиана Армасу (Lucian Armasu) «On The Viability Of Porting iOS And Android Apps To Windows 10 Mobile» рассмотрены технические особенности новых проектов софтверного гиганта.
С одной стороны, если каждый сможет переносить приложения на Windows 10 Mobile столь просто, как это отмечается компанией, это решит, наконец-то, основную характерную для Windows Phone проблему дефицита приложений. Эта проблема состоит из нескольких аспектов, формирующих своего рода замкнутый круг, из которого платформе крайне важно выйти. Прежде всего, недостаточно родных приложений для Windows Phone, и это негативно сказывается на доле рынка этой операционной системы, что в свою очередь отталкивает разработчиков от создания родных приложений для данной платформы. И это вновь негативно влияет на долю рынка ОС…
Предоставляя разработчикам просто способ переноса своих приложений на мобильную версию Windows 10, компания может сделать телефоны на базе своей платформы более привлекательными для пользователей. С другой стороны, процесс переноса приложений может оказаться проблематичным или же пользователям не понравится работать с такими приложениями, и телефоны на ее базе вновь не войдут в число тех, которые пользователи рассмотрят в качестве своего очередного девайса.
Project Islandwood (iOS)
Считается, что переносить iOS-приложения на платформу Windows 10 будет проще, поскольку они написаны на языках программирования Objective-C и C++, а Microsoft в значительной мере работает с модифицированными языками C++/CX.
В результате инструментарий для Project Islandwood окажется более качественным, чем для Project Astoria. На BUILD компания Microsoft пообещала, что разработчики для iOS смогут импортировать свои проекты Xcode в Visual Studio, интегрированную среду разработки от компании Microsoft. Компания также говорит, что для того, чтобы iOS-приложения начали работать на Windows 10, придется производить лишь минимальные изменения и «твики».
Дополнительной причиной успеха переноса iOS-приложений на платформу Windows может стать и тот факт, что iOS до сих пор является наиболее привлекательной платформой для разработчиков, именно для нее сначала и создающих свои новые приложения. Многие популярные программные продукты сначала становятся доступны пользователям iOS, и лишь потом их преимуществами получают возможность воспользоваться и обладатели Android-девайсов. Это означает, что у разработчиков уже есть огромный опыт создания iOS-приложений и они смогут переносить их на платформу Windows быстрее, чем Android-приложения.
Project Astoria (Android)
Хотя наиболее популярные мобильные приложения и появляются сначала для iOS, немало приложений прежде приходит на Android и лишь затем на iOS. Они создаются теми разработчиками, которые не заинтересованы в экосистеме Apple (обычно не из США) или поскольку они могут сделать приложение определенного типа только для Android. Хороший пример тому — виртуальные клавиатуры, которые долгое время не поддерживались iOS.
В отношении Java и Android у специалистов есть определенные сомнения. Microsoft сообщила, что Android-приложения будут запускаться в «контейнере». Это значит, что между приложением и операционной системой будет дополнительный слой, который может вызывать дополнительные задержки в работе программного обеспечения.
Хотя большинство приложений и смогут замечательно работать на премиальных девайсах под управлением Windows 10 Mobile, может оказаться, что на смартфонах, которые стоят дешевле 100 долларов США, они станут работать не очень хорошо, поскольку перенесенным приложениям требуется большая производительность (более мощные центральный и графический процессоры). Кроме того, перенесенные с Android будут несколько быстрее опустошать батарею, чем программное обеспечение, изначально созданное для iOS.
Приятная сторона проекта состоит в том, что навигация и управление в Android во многом подобна применяемой в Windows Phone. Большинство Android-девайсов располагают тремя аппаратными кнопками, как и телефоны на базе Windows. В основе навигации лежит тап на элементе интерфейса для перехода вперед и тап на кнопку возврата для перехода назад [←]. Благодаря этому подобию платформ, разработчикам не придется вносить в свои приложения значительные изменения, касающиеся навигации.
Универсальные приложения Windows 10 (Universal Apps)
Microsoft очень хотела бы, чтобы разработчики писали родные приложения для Windows 10, которые могли бы работать на управляемых ею устройствах — телефонах, настольных компьютерах, Xbox и других. Речь идет об универсальных приложениях новой операционной системы. При этом компания понимает, что разработчики приложений для мобильных устройств сохраняют нежелание создавать ПО для Windows Phone. И неизвестно, поменяет ли Windows 10 Mobile что-либо в этом отношении.
К примеру, Windows 10 может стать очень популярной ОС для персональных компьютеров, но оказаться не очень интересной платформой смартфонов, которые она, впрочем, позволит тоже превратить в ПК. В этом случае для большинства разработчиков для iOS и Android не будет смысла создавать приложения для новой операционной системы.
Специалисты отмечают, что создание приложения «с нуля» занимает от трех месяцев до полугода. Для сравнения: перенос его с iOS или Android может занять всего пару недель. Столь короткое время разработки может оказаться привлекательным фактором для тех разработчиков, которые в ином случае не делали бы приложений для других ОС, кроме привычных им Android и iOS.
Но нет уверенности в том, что перенесенные с Android и iOS приложения будут работать на девайсах Windows 10 столь же хорошо, как и родные программы. Ведь весь интерфейс изначально создавался для другой платформы и, если его не менять, у пользователей Windows может сложиться не самое приятное впечатление о приложении.
Microsoft — не первая компания, которая делает возможным перенос приложений в свою операционную систему с других платформ. BlackBerry тоже делала подобные попытки, позволяя Android-приложениям работать в виртуальной машине (VM) в своей операционной системе BlackBerry 10 OS. Хотя этот метод и расширил количество доступных для данной платформы приложений, он не принес успеха. Поэтому сейчас трудно сказать, какой эффект окажет предоставляемая разработчикам возможность сравнительно легко переносить свои приложения с Android и iOS на платформу Windows 10.
Следует отметить, что Microsoft до сих пор не выпустила инструментарии разработчика (SDK) для проектов Astoria и Islandwood. Софтверная корпорация обещает порадовать ими программистов вскоре после выхода Windows 10. Не исключено, что софтверному гиганту было бы и вовсе проще прекратить развитие своей платформы для девайсов Windows Mobile и перейти на Android.
Станет ли для Windows возможность переноса приложений с популярнейших платформ для смартфонов и планшетов началом обретения ею популярности среди пользователей этих устройств?