[ПВД] Почему Android-приложения на Windows 10 не навредят родным приложениям

Весной на Build 2015 компания Microsoft анонсировала инструментарий Project Astoria, который позволяет разработчикам переносить приложения с платформы Android на платформу Windows 10. Сегодня в сеть попала часть этого инструментария, которая позволяет устанавливать на сборку Windows 10 Mobile 10166 многие Android-приложения в виде дистрибутивов .apk. В связи с этим некоторые пользователи вместо того, чтобы обрадоваться такой возможности, расстроились. Это вынудило меня написать небольшую заметку, в которой я попытаюсь объяснить, почему Android-приложения в таком виде не убьют родные приложения для Windows 10.

Справка

Microsoft планирует выпустить Project Astoria осенью этого года. В настоящее время на официальном сайте предлагается попытаться получить эксклюзивный предварительный доступ к нему и отправить дистрибутив .apk своего приложения для проверки. Официально инструментарий Project Astoria ещё не выпущен, а всё, что мы сейчас умеем — утечки. После выхода даже предварительной версии многое может измениться.

Как сейчас работают Android-приложения, установленные на Windows 10 Mobile из .apk?

Итак, давайте разберёмся, почему Android-приложения в таком варианте на Windows 10 Mobile не являются угрозой экосистеме Windows 10. Многие приложения, созданные для Android, имеют привязку к сервисам Google Play, что ставит крест на их нормальной работе на Windows 10. Да, Android-приложения устанавливаются и запускаются на Windows 10 Mobile, но работают изолировано ото всей системе в подобии виртуальной машины. Из-за этого они не имеют прямого доступа ко многим компонентам операционной системы. К примеру, приложение Fitbit не сможет получить доступ к браслету Fitbit Flex, так как оно не может пользоваться Bluetooth модулем устройства. Официальный клиент Twitter не сможет присылать вам уведомления. Многие игры для Android имеют неполный дистрибутив, что вынуждает их после установки скачивать дополнительные файлы с сервера разработчика. В большинстве случаев это будет проблемой.

Таким образом, возможность поставить Android-приложение с помощью .apk подходит лишь в тех случаях, когда приложение довольно простое, а также не требует фонового агента и доступа к Bluetooth, SD-карте и так далее. Пожалуй, такой вариант имеет смысл также для игр, которые также не требуют фонового режима и работают по принципу «открыл-поиграл-закрыл». То есть, приложения, устанавливаемые напрямую из .apk, не смогут заменить родные приложения.

А можно ли исправить такое положение?

Без особых проблем в большинстве случаев Android-приложения благодаря Project Astoria можно сделать полнофункциональным приложением для Windows 10. Для того, чтобы заставить Android-приложение работать на Windows 10 Mobile так, как работают родные приложения, разработчику необходимо его доработать. Придётся импортировать исходный код приложения, а после переделать все привязки к API, к сервисам Microsoft вместо Google и так далее. Также в некоторых случаях придётся переделать дизайн приложения. Перенести с Android на Windows 10 приложение сложнее читалки для книг одной волшебной кнопкой не выйдет. По крайней мере, в настоящее время.

Как будут распространяться такие приложения?

Мы пока точно не знаем, так как Microsoft не раскрывала таких подробностей. Логичнее всего после доработки упаковывать приложения в дистрибутив .appx и распространять их через Windows Store наряду с нативными. Такой шаг выглядит наиболее верным, так как в таком случае приложения перед публикацией будут проходить процедуру тестирования и модерации внутри Microsoft. Кроме того, так перенесённые с Android-приложения могут использовать все преимущества Windows Store: биллинг, внутренние покупки, демо-версии и тому подобное.

Но возможен ещё один вариант. У меня получилось без проблем установить Яндекс.Store и запустить его. При попытке установить приложение из него сейчас происходит загрузка дистрибутива стандартными средствами Windows 10 Mobile, но при попытке установки появляется любопытное сообщение: «К сожалению, эта функция ещё не реализована». Это указывает на то, что в какой-то из следующих версий Windows 10 Mobile будет реализована установка .apk прямо из сторонних магазинов или даже из браузера. Такие приложения будут работать крайне ограничено, но в некоторых случаях вполне подойдут для использования.

[ПВД] Почему Android-приложения на Windows 10 не навредят родным приложениям

Яндекс.Store на Windows 10 Mobile позволил скачать дистрибутив приложения, но сама ОС сообщила, что она пока не готова к такому способу установки Android-приложений

Велика вероятность, что такой трюк для установки Android-приложений на Windows 10 Mobile исчезнет в момент выпуска первого релиза операционной системы. Вернее сказать, он останется только у разработчиков, которым необходимо протестировать работу своих приложений на Windows 10 Mobile. Обычные пользователи смогут получить приложения только официальными способами через магазины. Сейчас Windows 10 Mobile находится на стадии Insider Preview, а все участники программы Windows Insider считаются разработчиками. В будущем, чтобы получить возможность установки .apk напрямую, нужно быть зарегистрированным разработчиком.

Не приведёт ли это к тому, что разработчики будут лениться делать приложения на Windows 10?

Давайте будем честными. Многие компании и не собираются выпускать приложения для Windows Phone, так как «этой ОС никто не пользуется» (но мы же знаем, что, например, в России и в некоторых других странах Windows Phone популярнее iOS). В этих случаях пользователи будут рады и тому, что Android-приложение будет работать в виртуальной машине. Например, таким образом я установил приложение «Мегафон», с помощью которого я могу просто проверить остатки и увидеть подробности о моём счёте. Но не более того.

[ПВД] Почему Android-приложения на Windows 10 не навредят родным приложениям

Приложение, которое создано именно для Windows 10, может в большинстве случаев работать на огромном количестве устройств разного типа

Если разработчик хочет сделать действительно хорошее приложение, которым пользователям будет комфортно пользоваться, ему придётся доработать своё приложение для Android или iOS или же просто написать приложение для Windows 10 фактически с нуля. Первые два варианта чреваты тем, что внешний вид приложения будет достаточно чужеродным для Windows, но я надеюсь, что при портировании разработчики уделят внимание и этому вопросу. К тому же без серьёзных доработок многие приложения не станут универсальными, что снижает уровень выгоды для разработчика. Ведь универсальные приложения позволят охватить большую аудиторию — пользователей Windows 10 на ПК, на смартфонах, на Xbox One, на планшетах, на HoloLens и даже на IoT. Так что всё как обычно, качество приложения будет зависеть напрямую от разработчика.

Подведём итоги

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

  • Установленные на Windows 10 Mobile напрямую из .apk приложения работают изолированно от системы, что очень сильно снижает их полезность.
  • Возможность установки приложений напрямую из .apk, вероятнее всего, останется только у зарегистрированных разработчиков после выхода Windows 10 Mobile.
  • Обычные пользователи смогут устанавливать уже доработанные Android-приложения только из Windows Store.
  • Для того, чтобы Android-приложение на Windows 10 Mobile работало нормально, разработчику придётся переработать его: научить использовать API Windows, интегрировать сервисы Microsoft и, возможно, переделать дизайн.
  • Для разработчика выгоднее серьёзно переработать приложений, портированное с iOS или Android, или же написать новое именно для Windows 10. Универсальность и хорошая интеграция с Windows 10 принесёт свои плоды.
  • В заключение я хочу высказать своё мнение о том, что Project Astoria вовсе не навредит новой платформе Windows 10. Напротив, такой подход сможет привлечь некоторых пользователей и разработчиков, которые ранее избегали Windows-смартфонов. Как обычно, многое зависит от самих разработчиков. Надеемся на их трудолюбие. Но помните, что разработчики рассчитывают на доход и хорошую обратную связь. Так работает экосистема