Windows Subsystem for Android™️

Windows Subsystem for Android™️ enables your Windows 11 device to run Android applications that are available in the Amazon Appstore. Android is a trademark of Google LLC. If yous're a developer interested in targeting Windows desktop devices and optimizing for the Windows operating system, this guide is for you.

To make your Android app available on Windows 11 devices, you must:

  • Submit your app to the Amazon Appstore.

For more information or support:

  • Sign upwards for updates to the Amazon Appstore on Windows program.
  • Visit the Amazon developer support portal where you can discover articles, forums, FAQs, or reach out for direct support via the Appstore "Contact us" page in one case you prepare an Amazon Developer account.

This guide can aid y'all test and debug your Android app on Windows:

  • Set up your development environment, including prerequisites, installing the Amazon Appstore, and using the Settings app.
  • Handle input compatibility considerations for Windows devices, such every bit: keyboard input, mouse input, and window management and resizing.
  • Test and debug your app on a Windows 11 device.
  • Troubleshoot and find answers.

Set up your development environment

To test your Android app in the Windows desktop environment, a fleck of fix volition exist required.

Prerequisites

Windows Subsystem for Android is available for public preview on Windows 11.

Your device must meet specific requirements: Device requirements.

Install the Amazon Appstore

The Microsoft Shop will automatically install Windows Subsystem for Android silently in the background when either of the ii following user actions are taken:

  1. Install the Amazon Appstore from the Microsoft Store. Selecting Get will begin the installation of the app.
  2. Install an Android app from the Microsoft Store for the first time, which will also install the Amazon Appstore.

The Amazon Appstore and the Windows Subsystem for Android Settings app will then appear in the Windows 11 Offset menu and be available on search, offering a catalogue of Android apps.

Screenshot of Microsoft Store page featuring the Get button on the Amazon App Store

Note

The Amazon Appstore on Windows (a requirement for running Android apps on Windows xi) is currently but available in the US.

Windows Subsystem for Android™️ Settings app

To access the Windows Subsystem for Android Settings app, go to: Start > All Apps > Windows Subsystem for Android™️ Settings. Learn more than near specific settings app features: Manage settings for mobile apps on Windows.

Screenshot of Latte app settings

Input compatibility considerations for Windows devices

At that place are a few unique input behaviors to consider that will likely require updates to your Android app code, designed for handheld devices, to be uniform when running on a Windows desktop device via the Amazon Appstore.

Keyboard input

For text input fields handled by an on-screen virtual keyboard input method (or IME), such every bit EditText, apps should behave as expected. (EditText class in the Android docs).

For keystrokes that cannot be anticipated by the framework, apps will need to handle the behavior themselves. If this is already implemented in-app, no extra work is required.

Equally an example, some games may already back up motility facilitated via keyboard, through w a south d keys, aslope bear upon input.

The following are keyboard inputs that developers should consider lawmaking updates for when building for Windows 11 devices:

  • Enter Key
  • Pointer-key and Tab-key Navigation
  • Modify Selected Item Highlight Color
  • Ctrl-based Shortcuts

Learn more than most how to optimize for these keyboard input scenarios on desktop devices by post-obit the Android documentation:

  • Input compatibility guide in the Android docs
  • Handle keyboard input guide in the Android docs
  • Use affect gestures guide in the Android docs

Mouse input

Developers should consider updating code for the following mouse inputs when edifice for Windows devices:

  • Right Click
  • Tooltips / Hover Text
  • Hover Furnishings
  • Mouse Scroll Wheel Activity
  • Drag and Drop

Mouse input, like to keyboard input, must follow the official Android app guidelines. This ways using the InputDevice class paired with the SOURCE_MOUSE abiding. Learn more about how to optimize for these mouse input scenarios on desktop devices by post-obit the Android documentation:

  • Input compatibility guide in the Android docs
  • InputDevice reference in the Android docs
  • SOURCE_MOUSE reference in the Android docs

Window management and resizing

Unlike traditional mobile course factors, Android apps running on Windows eleven can be freely resized, should be responsive in their resizing, and tin be snapped using Windows actions/gestures.

Minimum screen requirement

Windows 11 enforces a minimum screen requirement of 720p resolution (1280x720) with a >ix" screen.

Letter & pillar battle

When the aspect ratio of a window size does non align betwixt the device screen sizes that window is being displayed on, the result may exist Letterboxing (the window is wider than it is high, or horizontally longer) or Pillarboxing (the window is more narrow than it is wide, or vertically longer). The result is bars being placed on the sides of the window in society to eye it. These bars may be light- or nighttime-themed depending on the system settings selected. This will only occur as necessary when the Android app is snapped or maximized, assuasive Android apps to take advantage of the rich snapping features in Windows and integrate into the windowing model.

Letterboxing and Pillarboxing example showing blank bars that center the window

Boosted resizing considerations

The following should besides be considered when updating an Android app to run on a Windows 11 device with respect to window management and resizing:

  • Initial launch size
  • Window dimensions
    • Content bounds
    • Gratis grade resizing
  • Screen Orientation

Learn more about how to optimize for window resizing scenarios on desktop devices by following the Window Management guide in the Android docs.

Test and debug

To test and debug your app on a Windows 11 device using the Windows Subsystem for Android the following set steps are required.

Enable programmer fashion in Windows Settings

You must first enable developer mode in Windows Settings. There are three ways to enable developer mode:

  • Open the Windows Subsystem for Android Settings app. In one case open, enable Developer Mode.
  • Search for "Developer Settings" in Windows search.
  • Navigate to Settings > Privacy and Security > For developers > Developer mode.

Connect to the Windows Subsystem for Android for debugging

To connect to the Windows Subsystem for Android VM for debugging:

  1. Become the IP address by opening the Windows Subsystem for Android Settings app. (Utilize Windows Search to select and launch.)

  2. The IP address will exist displayed under the IP accost department. If in that location is no IP address existence displayed, launch an Android app that was installed using the Amazon Appstore, then select Refresh on the IP address button in the Settings app.

  3. Now that yous accept the IP address to connect to the Windows Subsystem for Android VM, in your terminal or Powershell, you tin can connect using adb connect (you must have adb installed):

                      adb connect 172.22.137.166                                  

Connect to a test device

To connect to a test device (with Windows Subsystem for Android installed) on the same network from Windows/Mac:

  1. On the exam device (where Windows Subsystem for Android is installed) open up a PowerShell window and place the IP accost of the test device by running the command:

                      ipconfig                                  
  2. Using the debugging device terminal where Android Studio and the Android SDK is installed (Mac/Windows), enter the command:

                      adb connect <Exam DEVICE IP ADDRESS>:58526                                  

The <TEST DEVICE IP ADDRESS> tin can exist constitute in the output of "ipconfig" from the test device. Y'all can also deploy and debug apps from Android Studio.

To use Android Debug Span (ADB) to connect your development workstation directly to your Android device so y'all can install packages and evaluate changes, run into Android Debug Span in the Android Open Source Project docs.

Debug your app

While apps should be installed using the Amazon Appstore, debugging an Android app on a Windows device is possible using an APK (Android application package) and adb (Android Debug Bridge).

To debug an APK using adb:

  1. Follow the steps to connect to the Windows Subsystem for Android VM above.

  2. Install the APK using the adb install command: adb install app-debug .apk

    Expected Output:

                      Performing Streamed Install Success                                  
  3. A successful "app installed" notification will appear in the Windows notification card and the app will launch once selected.

Building Universal APKs

Windows Subsystem for Android utilizes Intel Bridge Applied science to emulate ARM applications on x86 based processors. ARM applications will run on ARM based processors natively. The emulation layer volition induce a functioning overhead – for optimal performance, submit your application for both the x86-64 and ARM64 architectures.

VM lifecycle considerations

Windows Subsystem for Android utilizes a virtual car (VM) which provides compatibility with the AOSP framework and devices like keyboards, mice, touch on, pen, etc.

There are three possible states for the VM running apps with Windows Subsystem for Android:

  1. Running
  2. Lightweight Doze: Activated after no app action for 3 minutes. Deactivated by user activeness or an app notification.
  3. Not Running: Activated after no app activity for 7 minutes.

Transitions between these states are triggered by user activity, such as launching or interaction with the Android app or an app notification. Android apps are paused and then stopped when their window is minimized.

VM lifecycle graph showing the running, lightweight doze, and not running

VM Properties

The properties for the Windows Subsystem for Android VM are listed beneath. Hardcoding these values is not recommended equally that could crusade time to come incompatibilities.

Property Value
Build.MANUFACTURER Microsoft Corporation
Build.MODEL Subsystem for Android
Build.VERSION.SDK_INT 30
Build.Board windows

Security

Windows Subsystem for Android performs per-file encryption that is software-based.

Both Windows kernel-mode drivers and Windows applications running at medium integrity level (IL) can audit capricious Android containers and Android app memory. In that location are no plans to add together detection for cheats/macro/bot/suspicious behaviors detection in the short-term.

Developers querying getSecurityLevel will get SECURITY_LEVEL_SW_SECURE_CRYPTO. Larn more nearly getSecurityLevel in the Android API Reference guide.

Uninstalling Windows Subsystem for Android

You can uninstall the Windows Subsystem for Android, but notation that all associated apps will also be uninstalled.

  • Uninstalling the Amazon Appstore will uninstall the Windows Subsystem for Android and all other Android apps.
  • Uninstalling an Amazon Appstore app will only uninstall the app (same behavior equally Windows apps).
  • Uninstalling the Windows Subsystem for Android will uninstall the Amazon Appstore and all Android apps.

Troubleshooting issues

If you lot encounter issues specific to the Amazon Appstore on Windows, attempt the post-obit troubleshooting steps:

  1. Select Windows search from the Windows task bar.
  2. Search for "Amazon Appstore" and correct-click on the Amazon Appstore icon.
  3. Select "App Settings" in the dropdown options.
  4. Select "Storage and Cache" and click both "Clear Storage" and "Clear enshroud".
  5. Get back and select "Forcefulness Stop".
  6. Close the Amazon Appstore Settings window.
  7. Relaunch the Amazon Appstore.

For farther troubleshooting steps relating to the Windows Subsystem for Android Settings app or to leave feedback using Feedback Hub, run into Troubleshooting and FAQ for mobile apps on Windows.

For any other developer questions and support, apply the Windows Subsystem for Android tag on Microsoft Q&A.

Additional resources

  • Install mobile apps and the Amazon Appstore
  • Accessibility on Windows Subsystem for Android