Подсистема Windows для Android™️ | Microsoft Learn
- Статья
Подсистема Windows для Android™️ позволяет устройству Windows 11 запускать приложения для Android, доступные в Amazon Appstore. Android является товарным знаком Google LLC. Это руководство поможет разработчикам, которые заинтересованы в создании приложений для настольных устройств Windows и оптимизации работы с операционной системой Windows.
Чтобы приложение Android было доступно на устройствах Windows 11, вам нужно сделать следующее:
- Отправьте приложение в Amazon Appstore.
Для получения дополнительных сведений или поддержки:
- Подпишитесь на получение новостей о программе реализации Amazon Appstore в Windows.
- Посетите портал службы поддержки Amazon для разработчиков, где можно найти статьи, форумы и часто задаваемые вопросы, или обратитесь в службу поддержки напрямую на странице Appstore «Contact us» (Связаться с нами) после настройки учетной записи разработчика Amazon.
Это руководство поможет вам протестировать и отладить приложение Android в Windows:
- Настройка среды разработки, в том числе выполнение предварительных требований, установка Amazon Appstore и использование приложения Параметры.
- Решение вопросов совместимости ввода для устройств Windows: ввод с клавиатуры, ввод с помощью мыши, управление окнами и изменение размера.
- Тестирование и отладка приложения на устройстве Windows 11.
- Устранение неполадок и поиск ответов.
GitHub для разработчиков
Хотите узнать больше о стратегии подсистема Windows для Android, обсудить проблемы разработчиков и отправить сообщения об ошибках или запросах функций с командой подсистемы? Посетите сайт GitHub для разработчиков подсистема Windows для Android.
Предварительная версия программы
Программа по ознакомлению с предварительной версией Подсистемы Windows для Android™️ позволяет пользователям получать предварительные сборки Подсистемы Windows для Android™ и Amazon Appstore в Windows. Дополнительные сведения см. на странице цен на программу предварительной версии.
Настройка среды разработки
Чтобы протестировать приложение Android в среде компьютера Windows, нужно выполнить некоторые действия.
Предварительные требования
подсистема Windows для Android доступно на Windows 11. При этом устройство должно соответствовать определенным требованиям: Требования к устройствам.
Установка Amazon Appstore
Microsoft Store автоматически установит подсистему Windows для Android в фоновом режиме при выполнении любого из следующих двух действий пользователя:
- Установка Amazon Appstore из Microsoft Store. Щелкните Получить, чтобы начать установку приложения.
- Установка приложения Android из Microsoft Store в первый раз; при этом также будет выполнена установка Amazon Appstore.
Затем приложение Amazon Appstore, содержащее каталог проверенных приложений Android, и приложение «Параметры» подсистемы Windows для Android появятся в меню Windows 11 и будут доступны для поиска.
Примечание
Amazon Appstore в Windows (требование для запуска приложений Android на Windows 11) доступна в выбранных регионах.
Приложение «Параметры» подсистемы Windows для Android™️
Чтобы открыть приложение «Параметры» подсистемы Windows для Android, выберите Пуск > Все приложения > Параметры подсистемы Windows для Android™️. Дополнительные сведения о конкретных возможностях приложения «Параметры» см. в статье Управление параметрами для мобильных приложений в Windows.
Вопросы, связанные с совместимостью ввода для устройств Windows
Есть несколько уникальных методов ввода, для поддержки которых, вероятно, понадобится обновить код приложения Android, предназначенный для портативных устройств, чтобы обеспечить совместимость при выполнении на настольном устройстве Windows с помощью Amazon Appstore.
Ввод с клавиатуры
При использовании полей ввода текста, обрабатываемых методом ввода с помощью виртуальной экранной клавиатуры (IME), например EditText
, приложения должны работать ожидаемым образом. (Класс EditText в документации Android.)
Нажатия клавиш, которые не ожидаются платформой, приложениям придется обрабатывать самостоятельно. Если это уже реализовано в приложении, дополнительные действия не требуются.
Например, некоторые игры наряду с сенсорным входом могут уже поддерживать перемещение с помощью клавиатуры — с использованием клавиш w
,a
, s
и d
.
Ниже приведены особенности использования клавиатуры, которые разработчики должны учитывать при обновлении кода для поддержки устройств Windows 11:
- клавиша ВВОД;
- навигация с помощью клавиш со стрелками и клавиши TAB;
- изменение цвета выделения выбранного элемента;
- сочетания клавиш с использованием CTRL.
Дополнительные сведения о том, как оптимизировать эти сценарии ввода с клавиатуры на настольных устройствах, см. в документации Android:
- Руководство по совместимости ввода в документации Android
- Руководство по обработке ввода с клавиатуры в документации Android
- Руководство по использованию сенсорных жестов в документации Android
Ввод с помощью мыши
При создании приложения для устройств Windows разработчикам следует рассмотреть возможность изменения кода, чтобы обеспечить поддержку следующих особенностей ввода данных с помощью мыши:
- Щелчок правой кнопкой мыши
- всплывающие подсказки и текст, отображающийся при наведении указателя мыши;
- эффекты при наведении указателя мыши;
- действия колесика мыши;
- Перетаскивание
Ввод с помощью мыши, аналогично вводу с клавиатуры, следует реализовать согласно официальном рекомендациям по приложениям Android. Это означает, что необходимо использовать класс InputDevice
с константой SOURCE_MOUSE
. Дополнительные сведения о том, как оптимизировать эти сценарии ввода с помощью мыши на настольных устройствах, см.
- Руководство по обеспечению совместимости ввода в документации по Android
- Справочник по InputDevice в документации Android
- Справочник по SOURCE_MOUSE в документации Android
Управление окнами и изменение размера
В отличие от традиционных мобильных форм-факторов, приложения Android, выполняющиеся в Windows 11, поддерживают произвольное изменение размера и прикрепление с помощью действий и жестов Windows.
Минимальные требования к экрану
В Windows 11 применяются минимальные требования к экрану: разрешение 720p (1280×720) и размер экрана больше 22,86 см (9 дюймов).
Леттербоксинг и пилларбоксинг
Если пропорции размера окна не соответствуют размерам экрана устройства, на котором отображается окно, в результате могут наблюдаться такие эффекты, как леттербоксинг (ширина окна больше его высоты, т. е. оно длиннее по горизонтали) или пилларбоксинг (ширина окна меньше его высоты, т. е. оно длиннее по вертикали). В результате вдоль сторон окна размещаются прямоугольники, чтобы выровнять его по центру. Эти прямоугольники могут быть светлыми или темными в зависимости от выбранных параметров системы. Они будут появляться по мере необходимости, только если приложение Android прикреплено или развернуто. Это позволяет приложениям Android использовать возможности прикрепления в Windows и интегрироваться в модель окон.
Дополнительные рекомендации по изменению размера
При изменении приложения Android для поддержки запуска на устройстве Windows 11 в отношении управления окнами и изменения размера необходимо учитывать следующее:
- начальный размер при запуске;
- размеры окна;
- границы содержимого;
- произвольное изменение размера;
- Ориентация экрана
Дополнительные сведения о том, как оптимизировать приложение под различные сценарии изменения размера окна на настольных устройствах, см. в руководстве по управлению окнами в документации Android.
События жизненного цикла приложения
Разработка приложений Android для среды с несколькими окнами влияет на события жизненного цикла, которые вы решили использовать в приложении. Хотя переопределение onPause
события может достичь нужных результатов на телефоне или планшете, обычно это событие используется неправильно, если вы изменяете пользовательский интерфейс приложения.
Описание событий жизненного цикла см. в документации по Android . Чаще всего требуется использовать onStop
событие, а не onPause
события или onUserLeaveHint
. На самом деле, многие реализации Android с несколькими окнами не доставляют onUserLeaveHint
уведомления, и поэтому любая бизнес-логика, которая может находиться в этом обработчике событий, не будет вызываться на этих платформах, включая подсистема Windows для Android.
Тестирование и отладка
Для тестирования и отладки приложения на устройстве Windows 11 с помощью Подсистемы Windows для Android необходимо выполнить описанные ниже подготовительные действия.
Включение режима разработчика в приложении «Параметры» для Windows
Сначала включите режим разработчика в приложении «Параметры» для Windows. Есть три способа включения режима разработчика:
- Откройте приложение «Параметры» Подсистемы Windows для Android. После открытия приложения включите режим разработчика.
- В Windows Search выполните поиск по фразе Developer Settings.
- Выберите «Параметры» > «Конфиденциальность и безопасность» > «Разработчикам» > «Режим разработчика».
Подключение к Подсистеме Windows для Android для отладки
Чтобы подключиться к виртуальной машине подсистемы Windows для Android для отладки, сделайте следующее:
Запустите приложение Android, установленное с помощью Amazon Appstore.
Вы можете подключиться с adb connect с помощью следующей команды (необходимо установить adb):
adb connect 127.0.0.1:58526
Подключение к тестовому устройству
На тестовом устройстве (где установлена Подсистема Windows для Android) откройте окно PowerShell и найдите IP-адрес тестового устройства, выполнив команду:
ipconfig
С помощью терминала устройства отладки, где установлены Android Studio и пакет SDK для Android (Mac или Windows), введите команду:
adb connect <TEST DEVICE IP ADDRESS>:58526
<TEST DEVICE IP ADDRESS>
можно найти в выходных данных ipconfig на тестовом устройстве. Вы также можете развертывать и отлаживать приложения с помощью Android Studio.
Сведения об использовании Android Debug Bridge (ADB) для подключения рабочей станции разработчика непосредственно к устройству Android, чтобы установить пакеты и оценить изменения, см. в статье Android Debug Bridge в документации Android Open Source Project.
Отладка приложения
Хотя приложения нужно устанавливать с помощью Amazon Appstore, отладка приложения Android на устройстве Windows возможна с помощью APK (пакет приложений Android) и ADB (Android Debug Bridge).
Чтобы выполнить отладку APK с помощью ADB:
Выполните описанные выше действия по подключению к виртуальной машине Подсистемы Windows для Android.
Установите APK, выполнив adb install:
adb install app-debug.apk
.Ожидаемые выходные данные:
Performing Streamed Install Success
В меню уведомлений Windows появится уведомление об установке приложения. Выберите приложение, чтобы запустить его.
Создание универсальных пакетов APK
Подсистема Windows для Android использует технологию Intel Bridge для эмуляции приложений ARM на процессорах на базе архитектуры x86. Приложения ARM изначально работают на процессорах на базе ARM. Использование уровня эмуляции приводит к снижению производительности. Для обеспечения оптимальной производительности отправьте приложение для архитектур x86–64 и ARM64.
Жизненный цикл виртуальной машины
Подсистема Windows для Android использует виртуальную машину, которая обеспечивает совместимость с платформой AOSP и устройствами, такими как клавиатуры, мыши, сенсорный ввод, перо и т. д.
Виртуальная машина, на которой запущены приложения с помощью Подсистемы Windows для Android, может находиться в одном из трех состояний:
- Запущен
- Спящий режим — активируется после отсутствия активности приложения в течение 3 минут, деактивируется при выполнении пользователем действия или при появлении уведомления от приложения.
- Не запущена — активируется после отсутствия активности приложения в течение 7 минут,
Переходы между этими состояниями вызываются действиями пользователя, например запуском или взаимодействием с приложением Android или уведомлением от приложения. После свертывания окна приложения Android оно приостанавливается, а затем останавливается.
Свойства виртуальной машины
Ниже перечислены свойства виртуальной машины Подсистемы Windows для Android. Не рекомендуется прописывать в коде эти значения, так как это может привести к несовместимости в будущем.
Свойство | Значение |
---|---|
Build.MANUFACTURER | Microsoft Corporation |
Build.MODEL | Подсистема для Android(TM) |
Build.VERSION.SDK_INT | 32 |
Build.BOARD | Windows |
Безопасность
Подсистема Windows для Android выполняет шифрование для каждого файла, на основе программного обеспечения.
Как драйверы Windows режима ядра, так и приложения Windows, работающие на среднем уровне целостности (IL), могут проверять произвольные контейнеры Android и память приложений Android. В краткосрочной перспективе не планируется добавлять обнаружение мошенничества, макросов, ботов и подозрительного поведения.
Разработчики, которые выполнят запрос getSecurityLevel
, получат SECURITY_LEVEL_SW_SECURE_CRYPTO
. Дополнительные сведения о getSecurityLevel
см. в справочнике по API Android.
Удаление Подсистемы Windows для Android
Вы можете удалить Подсистему Windows для Android, но учтите, что все связанные приложения также будут удалены.
- При удалении Amazon Appstore будет удалена Подсистема Windows для Android и все остальные приложения для Android.
- При удалении приложения из Amazon Appstore будет удалено только это приложение (как и в случае приложений для Windows).
- При удалении подсистемы Windows для Android будет удалено приложение Amazon Appstore и все приложения для Android.
Устранение неполадок
При возникновении проблем, связанных с Amazon Appstore на Windows, выполните следующие действия по устранению неполадок:
- Выберите Windows Search на панели задач Windows.
- Выполните поиск по запросу Amazon Appstore и щелкните правой кнопкой мыши значок Amazon AppStore.
- Выберите в раскрывающемся списке «Параметры приложения».
- Выберите «Хранилище и кэш» и щелкните «Очистить хранилище» и «Очистить кэш».
- Вернитесь и выберите «Принудительно остановить».
- Закройте окно параметров Amazon Appstore.
- Запустите Amazon AppStore заново.
Чтобы изучить дополнительные действия по устранению неполадок, связанные с приложением «Параметры» подсистемы Windows для Android, или узнать, как оставить отзыв с помощью Центра отзывов, см. статью Устранение неполадок с мобильными приложениями в Windows и часто задаваемые вопросы.
Для других вопросов и получения поддержки по разработке используйте тег подсистемы Windows для Android на сайте Microsoft Q&A.
Дополнительные ресурсы
- Приложения из Amazon Appstore
- Специальные возможности в Подсистеме Windows для Android
Можно ли запускать Windows на Android-смартфонах
Несмотря на то что Android – это открытая операционная система, которую все могут видоизменять как угодно, это всё-таки мобильная платформа. Поэтому и работает она на базе соответствующего железа. Да, оно производительное и энергоэффективное, но всё-таки мобильное. Так что запускать на Android-смартфонах полноценную Windows 10 – это просто немыслимая задача, справиться с которой было не под силу ни энтузиастам, ни разработчикам Microsoft. Однако им всё-таки удалось найти лазейку.
Windows можно запустить на Android-смартфоне, но не совсем так, как вы думали
На самом деле запустить Windows на смартфоне с Android можно, но не совсем так, как вы подумали. Microsoft разработала специальную версию своей операционки и назвала её Windows 365. В отличие от обычной Windows 10 (хотя по факту это та же Windows 10), Windows 365 работает в облаке.
Можно ли запускать Android-приложения на Windows
То есть сама ОС запускается где-то на удалённых серверах, а на устройство пользователя транслируется просто визуализированный результат совершаемых манипуляций. По факту, получается что-то вроде стриминга в стиле облачных игровых сервисов, которые обрабатывают игры в облаке, а нам присылают только картинку, которой мы ещё и управляем в реальном времени.
Что такое Виндовс 365
Windows 365 – это по сути, system-as-a-service (система как сервис), которая работает в облаке. Поэтому устанавливать Windows на смартфон принудительно не придётся. Вы просто открываете Google Chrome, переходите по URL-адресу, логинитесь и пользуетесь Windows на Android. Звучит дико, согласен, но это наша новая реальность.
Несмотря на то что Windows 365 работает в браузере, Microsoft никак специально её не пересобирала. Так что это та же самая Windows 10, которая сегодня установлена на большинстве современных компьютеров. Однако, когда выйдет Windows 11, то обновится и Windows 365. Понравится ли это всем пользователям – большой вопрос. Но о возможности остаться на старой версии Microsoft ничего не сказала.
Почему Android пережил Windows Phone?
Для работы Windows 365 используются ПК в разных конфигурациях. Максимальная – 16 ГБ оперативки и 512 ГБ SSD-памяти. Процессор и графику не оглашают, но скорее всего это будет что-то вроде i5 или i7 с дискретной графикой Radeon или Nvidia. Так что с быстродействием проблем быть не должно. Другое дело – как пользоваться Windows на Android-смартфоне.
Ведь даже если запустить операционку в мобильной версии браузера получится без проблем, то как пользоваться Windows на смартфоне с экраном в 6,5 дюймов? Логично, что никак, учитывая, что интерфейс Windows 10 под тач-управление не заточен от слова совсем. В принципе можно подключить к смартфону мышь и взаимодействовать с элементами ОС с её помощью, но ломать глаза скорее всего не захочет никто.
Как запустить Windows на Андроиде
Windows 365 запускается в облаке, и может работать на любых устройствах
Значит, единственный вариант нормально поработать с Windows на Android-смартфоне – это подключить к нему внешний монитор. В последнее время это стало делать совсем просто. Главное – заиметь соответствующий провод, а уж периферия подключится и по Bluetooth. Хотя, по большому-то счёту, можно обойтись и без неё, задействовав экран смартфона в качестве трекпада.
К сожалению, воспользоваться Windows 365 просто так будет нельзя. Непонятно почему, но на первых порах Microsoft решила ограничить сферу применения своего нового сервиса только коммерческими структурами. Проще говоря, рядовым пользователям доступ к облачной операционке доступ будет закрыт, а воспользоваться ей смогут только корпоративные клиенты.
Как быстро перебросить файлы с Android на Mac или Windows. Мой любимый способ
Действовать Windows 365 будет по подписке, а релиз проекта состоится почти через месяц – 22 августа. Цена абонемента на доступ к Windows 365 будет варьироваться и зависеть от различных факторов:
- Количество используемых устройств;
- Количество лицензий на Windows;
- Характеристики компьютеров, используемых для запуска;
- Период действия подписки.
То есть, как вы понимаете, лицензия – это, собственно, один аккаунт, которым пользуется один человек. Но он сможет пользоваться Windows 365 не только на ПК, но и на Mac, iPad и, как мы только что выяснили, Android. Это тоже будет влиять на стоимость подписки, которую придётся оплачивать руководству компании. А станет ли Windows 365 когда-нибудь общедоступным сервисом, пока неизвестно.
Подсистема Windows для Android™️ | Microsoft Learn
- Статья
Подсистема Windows для Android™️ позволяет вашему устройству с Windows 11 запускать приложения Android, доступные в Amazon Appstore. Android является товарным знаком Google LLC. Если вы разработчик, заинтересованный в ориентации на настольные устройства Windows и оптимизации для операционной системы Windows, это руководство для вас.
Чтобы приложение для Android стало доступным на устройствах с Windows 11, необходимо:
- Разместить приложение в Amazon Appstore.
Для получения дополнительной информации или поддержки:
- Подпишитесь на обновления программы Amazon Appstore для Windows.
- Посетите портал поддержки разработчиков Amazon, где вы можете найти статьи, форумы, ответы на часто задаваемые вопросы или обратиться за прямой поддержкой через страницу «Свяжитесь с нами» в App Store после создания учетной записи разработчика Amazon.
Это руководство поможет вам протестировать и отладить ваше приложение для Android в Windows:
- Настройте среду разработки, включая предварительные условия, установку Amazon Appstore и использование приложения «Настройки».
- Обработка вопросов совместимости ввода для устройств Windows, таких как: ввод с клавиатуры, ввод с помощью мыши, а также управление окнами и изменение их размера.
- Протестируйте и отладьте приложение на устройстве с Windows 11.
- Устранение неполадок и поиск ответов.
Разработчик GitHub
Хотите узнать больше о дорожной карте подсистемы Windows для Android, обсудить проблемы разработчиков и ошибки файлов или запросы функций с командой подсистемы? Посетите подсистему Windows для разработчиков Android на GitHub.
Программа предварительного просмотра
Программа предварительного просмотра подсистемы Windows для Android™️ позволяет пользователям получать ранние предварительные сборки подсистемы Windows для Android™ и Amazon Appstore для Windows. Для получения более подробной информации посетите страницу программы предварительной версии.
Настройка среды разработки
Чтобы протестировать приложение Android в среде рабочего стола Windows, потребуется небольшая настройка.
Предварительные требования
Подсистема Windows для Android доступна в Windows 11. Ваше устройство должно соответствовать определенным требованиям: Требования к устройству.
Установить Amazon Appstore
Магазин Microsoft автоматически установит подсистему Windows для Android в фоновом режиме, когда пользователь выполнит одно из двух следующих действий:
- Установите магазин приложений Amazon из магазина Microsoft. При выборе Получить начнется установка приложения.
- В первый раз установите приложение для Android из Microsoft Store, которое также установит Amazon Appstore.
Магазин приложений Amazon и приложение Windows Subsystem for Android Settings появятся в меню «Пуск» Windows 11 и будут доступны при поиске, предлагая каталог приложений для Android.
Примечание
Amazon Appstore для Windows (требование для запуска приложений Android в Windows 11) доступен в некоторых регионах.
Приложение «Подсистема Windows для Android™️ Настройки»
Чтобы получить доступ к приложению «Подсистема Windows для настроек Android», выберите: Пуск > Все приложения > Подсистема Windows для Android™️ Настройки . Узнайте больше о конкретных функциях приложения настроек: Управление настройками мобильных приложений в Windows.
Рекомендации по совместимости ввода для устройств Windows
Следует учитывать несколько уникальных вариантов поведения ввода, которые, вероятно, потребуют обновления кода вашего приложения Android, разработанного для портативных устройств, для обеспечения совместимости при работе на настольном устройстве Windows через Amazon Магазин приложений.
Ввод с клавиатуры
Для полей ввода текста, обрабатываемых с помощью метода ввода с виртуальной клавиатуры на экране (или IME), например EditText
, приложения должны вести себя должным образом. (класс EditText в документах Android).
Для нажатий клавиш, которые не могут быть предусмотрены платформой, приложения должны будут сами обрабатывать поведение. Если это уже реализовано в приложении, дополнительная работа не требуется.
Например, некоторые игры могут уже поддерживать перемещение с помощью клавиатуры до w
a
s
d
клавиши, наряду с сенсорным вводом.
Ниже перечислены вводы с клавиатуры, для которых разработчики должны учитывать обновления кода при сборке для устройств с Windows 11:
- Клавиша ввода
- Навигация с помощью клавиш со стрелками и клавиш табуляции
- Изменить цвет выделения выбранного элемента
- Ярлыки на основе Ctrl
Узнайте больше о том, как оптимизировать эти сценарии ввода с клавиатуры на настольных устройствах, следуя документации Android:
- Руководство по совместимости ввода в документации Android
- Руководство по вводу с клавиатуры в документах Android
- Используйте руководство по сенсорным жестам в документации Android
Ввод с помощью мыши
Разработчики должны рассмотреть возможность обновления кода для следующих операций ввода с помощью мыши при сборке для устройств Windows:
- Щелчок правой кнопкой мыши
- Подсказки / текст при наведении
- Эффекты наведения
- Колесико прокрутки мыши
- Перетаскивание
Ввод данных с помощью мыши, как и ввод с клавиатуры, должен соответствовать официальным рекомендациям для приложений Android. Это означает использование класса InputDevice
в паре с константой SOURCE_MOUSE
. Узнайте больше о том, как оптимизировать эти сценарии ввода с помощью мыши на настольных устройствах, следуя документации Android:
- Руководство по совместимости ввода в документации Android
- Ссылка на InputDevice в документации по Android
- Ссылка на SOURCE_MOUSE в документации по Android
Управление окнами и изменение размера
В отличие от традиционных мобильных форм-факторов, размер приложений Android, работающих в Windows 11, можно свободно изменять, они должны реагировать на изменение размера и могут быть зафиксированы с помощью действий/жестов Windows.
Минимальные требования к экрану
В Windows 11 установлено минимальное требование к экрану: разрешение 720p (1280×720) при размере экрана >9 дюймов.
Письменный и столбчатый бокс
Если соотношение сторон размера окна не совпадает с размерами экрана устройства, на котором отображается окно, результатом может быть Леттербоксинг (окно шире, чем в высоту, или длиннее по горизонтали) или Pillarboxing (окно уже, чем в ширину, или длиннее по вертикали). В результате полосы размещаются по бокам окна, чтобы центрировать его. Эти полосы могут иметь светлую или темную тематику в зависимости от выбранных системных настроек. Это будет происходить только по мере необходимости, когда приложение Android прикрепляется или развернуто, что позволяет приложениям Android использовать преимущества богатых функций привязки в Windows и интегрироваться в оконную модель.
Дополнительные рекомендации по изменению размера
При обновлении приложения Android для работы на устройстве с Windows 11 также следует учитывать следующее в отношении управления окнами и изменения размера:
- Начальный размер запуска
- Размеры окна
- Границы содержимого
- Произвольное изменение размера формы
- Ориентация экрана
Узнайте больше о том, как оптимизировать сценарии изменения размера окна на настольных устройствах, следуя руководству по управлению окнами в документации Android.
События жизненного цикла приложения
Разработка приложений Android для многооконной среды влияет на события жизненного цикла, которые вы выбираете для использования в своем приложении. Хотя переопределение события onPause
может привести к желаемым результатам на телефоне или планшете, обычно это неправильное событие для использования, если вы меняете UX своего приложения.
Описание событий жизненного цикла см. в документации по Android. Чаще всего вы захотите использовать onStop
, а не onPause
или onUserLeaveHint
. На самом деле, многие многооконные реализации Android не доставляют уведомление onUserLeaveHint
, поэтому любая критическая для бизнеса логика, которая может быть в этом обработчике событий, не будет вызываться на этих платформах, включая подсистему Windows для Android.
Тестирование и отладка
Чтобы протестировать и отладить приложение на устройстве с Windows 11 с помощью подсистемы Windows для Android, необходимо выполнить следующие действия по настройке.
Включить режим разработчика в настройках Windows
Сначала необходимо включить режим разработчика в настройках Windows. Есть три способа включить режим разработчика:
- Откройте приложение Windows Subsystem for Android Settings. После открытия включите Режим разработчика .
- Найдите «Параметры разработчика» в поиске Windows.
- Перейдите в «Настройки» > «Конфиденциальность и безопасность» > «Для разработчиков» > «Режим разработчика».
Подключение к подсистеме Windows для Android для отладки
Чтобы подключиться к подсистеме Windows для виртуальной машины Android для отладки:
Запустите приложение Android, установленное с помощью Amazon Appstore.
Вы можете подключиться с помощью adb connect с помощью следующей команды (у вас должен быть установлен adb):
АБР подключить 127.0.0.1:58526
Подключение к тестовому устройству
Для подключения к тестовому устройству (с установленной подсистемой Windows для Android) в той же сети из Windows/Mac:
На тестовом устройстве (где установлена подсистема Windows для Android) откройте окно PowerShell и определите IP-адрес тестового устройства, выполнив команду:
ipconfig
Используя терминал отладочного устройства, на котором установлены Android Studio и Android SDK (Mac/Windows), введите команду:
adb connect
: 58526
можно найти в выводе «ipconfig» тестового устройства. Вы также можете развертывать и отлаживать приложения из Android Studio.
Чтобы использовать Android Debug Bridge (ADB) для подключения рабочей станции разработки напрямую к устройству Android, чтобы вы могли устанавливать пакеты и оценивать изменения, см. раздел Android Debug Bridge в документации Android Open Source Project.
Отладка вашего приложения
В то время как приложения должны быть установлены с помощью Amazon Appstore, отладка приложения Android на устройстве Windows возможна с помощью APK (пакет приложения Android) и adb (Android Debug Bridge).
Чтобы отладить APK с помощью adb:
Выполните описанные выше шаги для подключения к подсистеме Windows для виртуальной машины Android.
Установите APK с помощью команды установки adb:
adb install app-debug.apk
Ожидаемый результат:
Выполнение потоковой установки Успех
Успешное уведомление «приложение установлено» появится в меню уведомлений Windows, и приложение запустится после его выбора.
Создание универсальных APK
Подсистема Windows для Android использует технологию Intel Bridge для эмуляции приложений Arm на процессорах на базе x86. Приложения Arm будут изначально работать на процессорах Arm. Уровень эмуляции приведет к снижению производительности — для оптимальной производительности отправьте приложение как для архитектуры x86-64, так и для архитектуры Arm64.
Вопросы жизненного цикла ВМ
Подсистема Windows для Android использует виртуальную машину (ВМ), которая обеспечивает совместимость с платформой AOSP и такими устройствами, как клавиатуры, мыши, сенсорные экраны, перо и т. д.
Существует три возможных состояния виртуальной машины, на которой запущены приложения с подсистемой Windows для Android:
- Работает
- Легкая дремота: активируется после отсутствия активности в приложении в течение 3 минут. Деактивировано действиями пользователя или уведомлением приложения.
- Не работает: активируется после отсутствия активности приложения в течение 7 минут.
Переходы между этими состояниями вызываются действиями пользователя, такими как запуск или взаимодействие с приложением Android или уведомлением приложения. Приложения Android приостанавливаются, а затем останавливаются, когда их окно свернуто.
Свойства виртуальной машины
Ниже перечислены свойства подсистемы Windows для виртуальной машины Android. Не рекомендуется жестко задавать эти значения, так как это может привести к несовместимости в будущем.
Собственность | Значение |
---|---|
Сборка ПРОИЗВОДИТЕЛЬ | Корпорация Майкрософт |
СБОРКА МОДЕЛЬ | Подсистема для Android(TM) |
Сборка.ВЕРСИЯ.SDK_INT 903:30 | 32 |
СТРОИТЕЛЬНАЯ ПЛАТА | окна |
Безопасность
Подсистема Windows для Android выполняет шифрование каждого файла на основе программного обеспечения.
Как драйверы режима ядра Windows, так и приложения Windows, работающие на среднем уровне целостности (IL), могут проверять произвольные контейнеры Android и память приложений Android. В ближайшее время не планируется добавлять обнаружение читов/макросов/ботов/подозрительного поведения.
Разработчики, запрашивающие getSecurityLevel
, получат SECURITY_LEVEL_SW_SECURE_CRYPTO
. Узнайте больше о getSecurityLevel
в Справочном руководстве по Android API.
Удаление подсистемы Windows для Android
Вы можете удалить подсистему Windows для Android, но обратите внимание, что все связанные приложения также будут удалены.
- Удаление магазина приложений Amazon приведет к удалению подсистемы Windows для Android и всех других приложений Android.
- Удаление приложения Amazon Appstore приведет к удалению только самого приложения (такое же поведение, как и для приложений Windows).
- Удаление подсистемы Windows для Android приведет к удалению магазина приложений Amazon и всех приложений Android.
Устранение неполадок
Если вы столкнулись с проблемами, характерными для Amazon Appstore в Windows, попробуйте выполнить следующие действия по устранению неполадок:
- Выберите Поиск Windows на панели задач Windows.
- Найдите «Amazon Appstore» и щелкните правой кнопкой мыши значок Amazon Appstore.
- Выберите «Настройки приложения» в раскрывающемся списке.
- Выберите «Хранилище и кэш» и нажмите «Очистить хранилище» и «Очистить кэш».
- Вернитесь назад и выберите «Принудительная остановка».
- Закройте окно настроек Amazon Appstore.
- Перезапустите магазин приложений Amazon.
Дальнейшие шаги по устранению неполадок, связанных с приложением «Подсистема Windows для параметров Android», или оставить отзыв с помощью центра отзывов см. в разделе «Устранение неполадок» и «Часто задаваемые вопросы» для мобильных приложений в Windows.
По любым другим вопросам разработчиков и поддержке используйте тег «Подсистема Windows для Android» в Microsoft Q&A.
Дополнительные ресурсы
- Приложения из Amazon Appstore
- Специальные возможности в подсистеме Windows для Android
Разработка Android на Windows | Microsoft Узнайте
Редактировать
Твиттер LinkedIn Фейсбук Электронная почта
- Статья
Руководство, которое поможет вам настроить среду разработки на компьютере с Windows 10 или Windows 11 для разработки приложений для Android. Android является товарным знаком Google LLC. Если вы разработчик, заинтересованный в использовании операционной системы Windows для создания приложений, которые работают на устройствах Android и на других платформах устройств, это руководство для вас.
Вы также можете узнать об использовании подсистемы Windows для Android™️ для обновления и тестирования вашего приложения Android, чтобы оно могло работать на устройстве Windows 11 с помощью Amazon Appstore. Узнать больше.
Windows как среда разработки
Существует несколько способов разработки приложения для устройства Android с использованием операционной системы Windows. Эти пути делятся на три основных типа: Нативная разработка для Android , Кросс-платформенная разработка и Разработка игр для Android . Этот обзор поможет вам решить, какой путь разработки выбрать для разработки приложения для Android, а затем предоставит следующие шаги, которые помогут вам начать использовать Windows для разработки:
- Родной Android
- .NET МАУИ
- Xamarin.Android
- Реагировать на родной
- PWA с Cordova или Ionic
- C/C++ для разработки игр
Кроме того, это руководство содержит советы по использованию Windows для:
- тестирования на устройстве Android или эмуляторе
- Обновите настройки Защитника Windows для повышения производительности
- Разработайте приложения для двух экранов для Android и получите SDK для устройства Surface Duo
Родной Android
Родная разработка Android для Windows означает, что ваше приложение предназначено только для Android (а не для устройств iOS или Windows). Вы можете использовать Android Studio или Visual Studio для разработки в экосистеме, разработанной специально для операционной системы Android. Производительность будет оптимизирована для устройств Android, внешний вид пользовательского интерфейса будет соответствовать другим собственным приложениям на устройстве, а любые функции или возможности пользовательского устройства будут доступны и просты в использовании. Разработка вашего приложения в нативном формате поможет ему просто «чувствовать себя правильно», потому что оно соответствует всем шаблонам взаимодействия и стандартам взаимодействия с пользователем, установленным специально для устройств Android.
Кросс-платформенный
Кросс-платформенные фреймворки предоставляют единую кодовую базу, которую можно (в основном) совместно использовать на устройствах Android, iOS и Windows. Использование кросс-платформенной платформы может помочь вашему приложению сохранить одинаковый внешний вид и работу на разных платформах устройств, а также воспользоваться преимуществами автоматического развертывания обновлений и исправлений. Вместо того, чтобы понимать различные языки кода для конкретных устройств, приложение разрабатывается в общей кодовой базе, как правило, на одном языке.
Несмотря на то, что кроссплатформенные фреймворки должны выглядеть и работать как можно ближе к нативным приложениям, они никогда не будут интегрированы так же легко, как нативные приложения, и могут страдать от снижения скорости и производительности. Кроме того, инструменты, используемые для создания кроссплатформенных приложений, могут не иметь всех функций, предлагаемых каждой отдельной платформой устройства, что может потребовать обходных путей.
Кодовая база обычно состоит из кода пользовательского интерфейса для создания пользовательского интерфейса, такого как страницы, элементы управления кнопками, метки, списки и т. д., и 9Логический код 0062 для вызова веб-сервисов, доступа к базе данных, вызова аппаратных возможностей и управления состоянием. В среднем 90 % этого можно использовать повторно, хотя обычно требуется настраивать код для каждой платформы устройства. Это обобщение в значительной степени зависит от типа приложения, которое вы создаете, но дает немного контекста, который, надеюсь, поможет вам в принятии решений.
Выбор кроссплатформенной платформы
Xamarin Native (Xamarin.Android)
- Код пользовательского интерфейса: XML с Android Designer и Material Theme
- Логический код: C# или F#
- Все еще можно использовать некоторые нативные элементы Android, но это хорошо для повторного использования кодовой базы для других платформ (iOS, Windows).
- На платформах используется только код логики, но не код пользовательского интерфейса.
- Отлично подходит для более сложных приложений с пользовательским интерфейсом для конкретного устройства.
React Native
- Код пользовательского интерфейса: JavaScript
- Логический код: JavaScript
- Цель React Native не в том, чтобы один раз написать код и запустить его на любой платформе, а в том, чтобы один раз выучить (как в React) и писать где угодно.
- Сообщество добавило такие инструменты, как Expo и Create React Native App, чтобы помочь тем, кто хочет создавать приложения без использования Xcode или Android Studio.
- Подобно Xamarin (C#), React Native (JavaScript) вызывает собственные элементы пользовательского интерфейса (без необходимости написания Java/Kotlin или Swift).
Прогрессивные веб-приложения (PWA)
- Код пользовательского интерфейса: HTML, CSS, JavaScript
- Логический код: JavaScript
- PWA — это веб-приложения, созданные на основе стандартных шаблонов, которые позволяют им использовать преимущества как веб-функций, так и собственных функций приложений. Их можно построить без фреймворка, но стоит рассмотреть несколько популярных фреймворков: Ionic и Apache Cordova.
- PWA могут быть установлены на устройстве (Android, iOS или Windows) и могут работать в автономном режиме благодаря включению сервис-воркера.
- PWA можно распространять и устанавливать без магазина приложений, используя только веб-URL. В Microsoft Store и Google Play Store разрешено перечисление PWA, в Apple Store в настоящее время нет, хотя их по-прежнему можно установить на любое устройство iOS с версией 12.2 или более поздней.
- Чтобы узнать больше, ознакомьтесь с этим введением в PWA на MDN.
Разработка игр
Разработка игр для Android часто отличается от разработки стандартного приложения для Android, поскольку игры обычно используют пользовательскую логику рендеринга, часто написанную на OpenGL или Vulkan. По этой причине, а также из-за множества доступных библиотек C, поддерживающих разработку игр, разработчики обычно используют C/C++ с Visual Studio вместе с Android Native Development Kit (NDK) для создания игр для Android. Начните использовать C/C++ для разработки игр.
Еще один распространенный способ разработки игр для Android — использование игрового движка. Доступно множество бесплатных движков с открытым исходным кодом, таких как Unity с Visual Studio, Unreal Engine, MonoGame с Xamarin, UrhoSharp с Xamarin, SkiaSharp с Xamarin.