Windows sottosistema per Android™️

Windows sottosistema per Android™️ consente al dispositivo Windows 11 di eseguire applicazioni Android disponibili in Amazon Appstore.

Per gli sviluppatori interessati a scegliere come destinazione Windows desktop e a ottimizzare il sistema operativo Windows, questa guida è la più utile. Viene illustrato come:

Configurazione dell'ambiente di sviluppo

Per testare l'app Android Windows'ambiente desktop, è necessario un po' di configurazione.

Prerequisiti

Windows Subsystem for Android è attualmente disponibile solo tramite l'anteprima tramite i canali Beta e Dev del programma Windows Insiders (serie Windows 11 Build 22000.xxx) solo negli Stati Uniti.

Il dispositivo deve anche soddisfare requisiti specifici Windows 11. Controllare la sezione "Windows Subsystem for Android" in "Requisiti specifici delle funzionalità" nella pagina: Trovare le specifiche, le funzionalità e i requisiti del computer di Windows 11.

Installare Amazon Appstore

Il Microsoft Store installerà automaticamente Windows Subsystem for Android (che esegue Android 11) automaticamente in background quando viene eseguita una delle due azioni utente seguenti:

  1. Installare Amazon Appstore dal Microsoft Store.
  2. Installare un'app Android o Amazon dal Microsoft Store per la prima volta, che installerà anche Amazon Appstore.

Amazon Appstore verrà quindi visualizzato nel Windows 11 menu Start e sarà disponibile per la ricerca, offrendo un catalogo curato di app Android.

Screenshot della Microsoft Store con amazon App Store

Selezionando Ottieni verrà avviata l'installazione dell'app. L'app verrà visualizzata anche Windows Start, Cerca e nell'Windows Programmi.

Screenshot della Microsoft Store con il pulsante Ottieni nella pagina Amazon App Store

app Impostazioni

Per accedere all'app Windows subsystem for Android Impostazioni, passare a: Start > All Apps > Windows Subsystem for Android™️. L Impostazioni app può essere usata per modificare le impostazioni seguenti:

  • Utilità per la lettura dello schermo del sottosistema

    Se l'input tocco non funziona, assicurarsi che l'utilità per la lettura dello schermo del sottosistema sia disattivata. Per altre informazioni, vedere Supporto tecnico Microsoft: Accessibilità nel sottosistema Windows per Android.

  • Risorse del sottosistema

    • Se necessario: quando questa opzione è selezionata, il sottosistema verrà aperto all'apertura di un'app per dispositivi mobili. Poiché il sottosistema deve essere aperto per primo, l'apertura dell'app per dispositivi mobili potrebbe richiedere più tempo. Le app per dispositivi mobili aperte dopo la prima potrebbero non essere interessate.

    • Continuo: il sottosistema è sempre pronto ad aprire le app. Poiché è sempre aperto in background, userà più memoria e potenza di elaborazione del PC.

  • Abilitare la modalità sviluppatore

    Per testare ed eseguire il debug dell'app in un dispositivo Windows 11, è necessario impostare Modalità sviluppatore su On.

Screenshot delle impostazioni dell'app Latte

Considerazioni sulla compatibilità dell'input Windows dispositivi

Esistono alcuni comportamenti di input univoci da considerare che probabilmente richiederanno aggiornamenti al codice dell'app Android, progettati per i dispositivi portatili, per essere compatibili durante l'esecuzione in un dispositivo desktop Windows tramite Amazon Appstore.

Input da tastiera

Per i campi di input di testo gestiti da un metodo di input della tastiera virtuale su schermo (o IME), ad esempio EditText , le app devono comportarsi come previsto. (Classe EditText nella documentazione di Android).

Per le sequenze di tasti che non possono essere previste dal framework, le app dovranno gestire il comportamento. Se questa funzionalità è già implementata in-app, non sono necessarie operazioni aggiuntive.

Ad esempio, alcuni giochi potrebbero già supportare lo spostamento facilitato tramite tastiera, tramite w a s d tasti, insieme all'input tocco.

Di seguito sono riportati gli input da tastiera per cui gli sviluppatori devono prendere in considerazione gli aggiornamenti del codice durante la compilazione Windows 11 dispositivi:

  • Tasto INVIO
  • Spostamento tramite tasto di direzione e tasto TAB
  • Modificare il colore di evidenziazione dell'elemento selezionato
  • Tasti di scelta rapida basati su CTRL

Per altre informazioni su come ottimizzare questi scenari di input da tastiera nei dispositivi desktop, vedere la documentazione di Android:

Input tramite mouse

Gli sviluppatori devono prendere in considerazione l'aggiornamento del codice per gli input del mouse seguenti durante la compilazione Windows dispositivi:

  • Fare clic con il pulsante destro del mouse
  • Descrizioni comando/Testo al passaggio del mouse
  • Effetti al passaggio del mouse
  • Azione della rotellina del mouse
  • Trascinamento e rilascio

L'input del mouse, analogamente all'input da tastiera, deve seguire le linee guida ufficiali per le app Android. Ciò significa usare la InputDevice classe associata alla SOURCE_MOUSE costante . Per altre informazioni su come ottimizzare questi scenari di input del mouse nei dispositivi desktop, vedere la documentazione di Android:

Gestione e ridimensionamento delle finestre

A differenza dei fattori di forma per dispositivi mobili tradizionali, le app Android in esecuzione in Windows 11 possono essere ridimensionate liberamente, devono essere reattive nel ridimensionamento e possono essere bloccate usando Windows azioni/movimenti.

Requisito minimo dello schermo

Windows 11 impone un requisito minimo dello schermo con risoluzione di 720p (1280x720) con uno schermo >9".

Boxing & letter-&

Quando le proporzioni di una finestra non sono allineate tra le dimensioni dello schermo del dispositivo in cui viene visualizzata la finestra, il risultato potrebbe essere Letterboxing (la finestra è più ampia di quella alta o orizzontalmente più lunga) o Pillarboxing (la finestra è più stretta di quella larga o verticalmente più lunga). Il risultato è che le barre vengono posizionate sui lati della finestra per centrarla. Queste barre possono avere un tema chiaro o scuro a seconda delle impostazioni di sistema selezionate. Ciò si verifica solo se necessario quando l'app Android viene ancorata o ingrandita, consentendo alle app Android di sfruttare le funzionalità avanzate di blocco in Windows e di integrarsi nel modello di windowing.

Esempio di Letterboxing e Pillarboxing che mostra le barre vuote che centrano la finestra

Considerazioni aggiuntive sul ridimensionamento

Quando si aggiorna un'app Android per l'esecuzione in un dispositivo Windows 11, è necessario considerare anche quanto segue per quanto riguarda la gestione e il ridimensionamento delle finestre:

  • Dimensioni di avvio iniziale
  • Dimensioni della finestra
    • Limiti del contenuto
    • Ridimensionamento in formato libero
  • Orientamento dello schermo

Per altre informazioni su come ottimizzare gli scenari di ridimensionamento delle finestre nei dispositivi desktop, vedere la guida gestione delle finestre nella documentazione di Android.

Eseguire test e debug

Per testare ed eseguire il debug dell'app in un dispositivo Windows 11 usando il sottosistema Windows per Android, sono necessari i passaggi di configurazione seguenti.

Abilitare la modalità sviluppatore in Windows Impostazioni

È prima necessario abilitare la modalità sviluppatore in Windows Impostazioni. Esistono tre modi per abilitare la modalità sviluppatore:

  • Aprire l'app Windows subsystem for Android Impostazioni. Dopo l'apertura, selezionare Abilita Developer Impostazioni.
  • Cercare "Developer Impostazioni" nella Windows ricerca.
  • Passare alla pagina Impostazioni > privacy e sicurezza > per sviluppatori > developer.

Connessione al sottosistema Windows per Android per il debug

Per connettersi alla macchina virtuale Windows per Android per il debug, sono disponibili due opzioni:

  1. Metodo consigliato:

    • Usare localhost per la connessione al debug. L'indirizzo IP dell'host locale è: 127.0.0.1:58526 . Windows sottosistema per Android deve essere in esecuzione per connettersi, il modo migliore per avviare il sottosistema Windows per Android è avviare un'app Android installata con Amazon Appstore.
    • Per connettersi all'indirizzo localhost Windows sottosistema per Android, immettere:adb connect 127.0.0.1:58526
  2. Metodo alternativo: usare il sottosistema Windows per Android Impostazioni app per ottenere l'indirizzo IP.

    • Avviare l'app Impostazioni app. Usare Windows ricerca per selezionare e avviare.
    • L'indirizzo IP verrà visualizzato nella sezione Indirizzo IP. Se non viene visualizzato alcun indirizzo IP, avviare un'app Android installata usando Amazon Appstore, quindi selezionare Aggiorna nel pulsante Indirizzo IP nell'app Impostazioni app.

Ora che si ha l'indirizzo IP per connettersi al sottosistema Windows android, connettersi usando adb connect:

adb connect 172.22.137.166

Connessione a un dispositivo di test

Per connettersi a un dispositivo di test (con Windows sottosistema per Android installato) nella stessa rete da Windows/Mac:

  1. Nel dispositivo di test (Windows sottosistema per Android) aprire una finestra di PowerShell e identificare l'indirizzo IP del dispositivo di test eseguendo il comando :

    ipconfig
    
  2. Usando il terminale del dispositivo di debug Android Studio e il Android SDK (Mac/Windows), immettere il comando:

    adb connect <TEST DEVICE IP ADDRESS>
    

<TEST DEVICE IP ADDRESS>L'oggetto è disponibile nell'output di "ipconfig" dal dispositivo di test. È anche possibile distribuire ed eseguire il debug di app da Android Studio.

Per usare Android Debug Bridge (ADB) per connettere la workstation di sviluppo direttamente al dispositivo Android in modo da poter installare pacchetti e valutare le modifiche, vedere Android Debug Bridge nella documentazione di Android Open Source Project.

Eseguire il debug dell'app

Anche se le app devono essere installate usando Amazon Appstore, il debug di un'app Android in un dispositivo Windows è possibile usando un APK (pacchetto dell'applicazione Android) e adb (Android Debug Bridge).

Per eseguire il debug di un APK tramite adb:

  1. Seguire la procedura per connettersi al sottosistema Windows android precedente.

  2. Installare l'APK usando il comando adb install: adb install app-debug .apk

    Output previsto:

    Performing Streamed Install
    Success
    
  3. Verrà visualizzata una notifica di completamento dell'installazione dell'app nel menu Windows notifica e l'app verrà avviata dopo la selezione.

Considerazioni sul ciclo di vita delle macchine virtuali

Windows sottosistema per Android usa una macchina virtuale (VM) che garantisce la compatibilità con il framework AOSP e dispositivi come tastiere, mouse, tocco, penna e così via.

Esistono tre stati possibili per la macchina virtuale che esegue app con Windows sottosistema per Android:

  1. In esecuzione
  2. Lightweight Doze: attivato dopo nessuna attività dell'app per 3 minuti. Disattivato dall'attività dell'utente o da una notifica dell'app.
  3. Non in esecuzione: attivato dopo nessuna attività dell'app per 7 minuti.

Le transizioni tra questi stati vengono attivate dall'attività dell'utente, ad esempio l'avvio o l'interazione con l'app Android o una notifica dell'app. Le app Android vengono sospese e quindi arrestate quando la finestra è ridotta a icona.

Grafico del ciclo di vita della macchina virtuale che mostra l'esecuzione, la soscisa leggera e non in esecuzione

Proprietà della macchina virtuale

Le proprietà per il sottosistema Windows android sono elencate di seguito. La hardcoding di questi valori non è consigliata perché ciò potrebbe causare incompatibilità future.

Proprietà Valore
Build.MANUFACTURER Microsoft Corporation
Build.MODEL Sottosistema per Android
Build.VERSION.SDK_INT 30
Build.BOARD windows

Sicurezza

Windows sottosistema per Android esegue la crittografia per file basata su software.

Sia Windows driver in modalità kernel che Windows applicazioni in esecuzione a livello di integrità media (IL) possono esaminare contenitori Android arbitrari e memoria delle app Android. Non è previsto di aggiungere il rilevamento per il rilevamento di trucchi/macro/bot/comportamenti sospetti a breve termine.

Gli sviluppatori che getSecurityLevel eserciteranno query otterrà SECURITY_LEVEL_SW_SECURE_CRYPTO . Per altre getSecurityLevel informazioni, vedere la guida di riferimento per le API Android.

Amazon Appstore

Per essere disponibile in un dispositivo Windows 11, è necessario pubblicare un'app Android in Amazon Appstore. Attualmente sono disponibili solo un piccolo set di app selezionate da Microsoft e Amazon.

Per informazioni sulla destinazione degli APK a dispositivi specifici, gli sviluppatori devono fare riferimento alle linee guida sulla destinazione dei dispositivi Amazon.

Risoluzione dei problemi relativi ad Amazon Appstore

Se si verificano problemi specifici di Amazon Appstore Windows, provare la procedura di risoluzione dei problemi seguente:

  1. Selezionare Windows ricerca dalla barra Windows attività.
  2. Cercare "Amazon Appstore" e fare clic con il pulsante destro del mouse sull'icona amazon appstore.
  3. Selezionare "App Impostazioni" nelle opzioni a discesa.
  4. Selezionare "Archiviazione cache" e fare clic su "Cancella Archiviazione" e "Cancella cache".
  5. Tornare indietro e selezionare "Force Stop".
  6. Chiudere la finestra Impostazioni Amazon Apptore.
  7. Riavvia amazon appstore.

Per altre procedure di risoluzione dei problemi relative all'app Windows Subsystem for Android Impostazioni o per lasciare commenti e suggerimenti usando Hub di Feedback, vedere Risolvere i problemi delle app per dispositivi mobili in Windows.

Creazione di APK universali

Windows sottosistema per Android usa la tecnologia Intel Bridge per emulare le applicazioni ARM in processori basati su x86. Le applicazioni ARM verranno ovviamente eseguite in processori basati su ARM in modo nativo. Il livello di emulazione indurrà un sovraccarico delle prestazioni. Per prestazioni ottimali, inviare l'applicazione per le architetture x86-64 e ARM64.

Disinstallazione Windows sottosistema per Android

È possibile disinstallare Windows sottosistema per Android, ma si noti che verranno disinstallate anche tutte le app associate.

  • La disinstallazione di Amazon Appstore disinstalla il sottosistema Windows per Android e tutte le altre app Amazon.
  • La disinstallazione di un'app Amazon Appstore comporta solo la disinstallazione dell'app (stesso comportamento Windows app).
  • Disinstallando il sottosistema Windows per Android, Amazon Appstore e tutte le app Amazon verranno disinstallati.

Risorse aggiuntive