Eseguire app su un dispositivo hardware

Testa sempre la tua app Android su un dispositivo reale prima di rilasciarla agli utenti. In questa pagina viene descritto come configurare l'ambiente di sviluppo e il dispositivo Android per eseguire test e debug tramite una connessione Android Debug Bridge (ADB).

Configurare un dispositivo per lo sviluppo

Prima di poter iniziare il debug sul dispositivo, decidi se vuoi connetterti al dispositivo tramite un cavo USB o Wi-Fi. Poi segui questi passaggi:

  1. Sul dispositivo, apri l'app Impostazioni, seleziona Opzioni sviluppatore e attiva Debug USB (se applicabile).

  2. Configura il sistema per rilevare il dispositivo.

    • ChromeOS: non è richiesta alcuna configurazione aggiuntiva.
    • macOS: non sono necessarie ulteriori configurazioni.
    • Windows: installa un driver USB per ADB (se applicabile). Per una guida all'installazione e i link ai driver OEM, consulta Installare driver USB OEM.
    • Ubuntu Linux: configura quanto segue:

      • Ogni utente che vuole utilizzare ADB deve far parte del gruppo plugdev. Se viene visualizzato un messaggio di errore che indica che non fai parte del gruppo plugdev, aggiungiti utilizzando il seguente comando:
      sudo usermod -aG plugdev $LOGNAME
      

      I gruppi vengono aggiornati solo all'accesso, pertanto devi uscire affinché questa modifica abbia effetto. Quando accedi di nuovo, puoi utilizzare id per verificare di far parte del gruppo plugdev.

      • Nel sistema deve essere installata l'app udev regola che copre il dispositivo. Il pacchetto android-sdk-platform-tools-common contiene un insieme predefinito di regole udev gestito dalla community per i dispositivi Android. Per installarla, utilizza il seguente comando:
      apt-get install android-sdk-platform-tools-common
      

Connetti al dispositivo tramite USB

Dopo aver completato la configurazione e il collegamento tramite USB, fai clic su Esegui in Android Studio per creare ed eseguire la tua app sul dispositivo.

Puoi anche utilizzare adb per inviare comandi, come segue:

  • Verifica che il dispositivo sia connesso eseguendo il comando adb devices dalla directory android_sdk/platform-tools/. Se connesso, vedrai il dispositivo nell'elenco.
  • Esegui qualsiasi comando adb con il flag -d per scegliere come target il tuo dispositivo.

Connetti al dispositivo tramite Wi-Fi

Android 11 e versioni successive supportano il deployment e il debug dell'app in modalità wireless dalla workstation tramite Android Debug Bridge (ADB). Ad esempio, puoi eseguire il deployment dell'app di cui è possibile eseguire il debug su più dispositivi remoti senza collegare fisicamente il dispositivo tramite USB e non affrontare problemi di connessione USB comuni, ad esempio l'installazione del driver.

Per utilizzare il debug wireless, devi accoppiare il dispositivo alla workstation utilizzando un codice di accoppiamento. Per iniziare, completa i seguenti passaggi:

  1. Assicurati che la workstation e il dispositivo siano connessi alla stessa rete wireless.
  2. Assicurati che sul dispositivo sia installato Android 11 o una versione successiva. Per ulteriori informazioni, consulta l'articolo Controllare e aggiornare la versione di Android.
  3. Assicurati di avere installato la versione più recente di Android Studio. Scaricala qui.
  4. Sulla workstation, esegui l'aggiornamento alla versione più recente degli SDK Platform Tools.

Per connetterti al dispositivo, procedi nel seguente modo:

  1. Apri Android Studio e seleziona Accoppia dispositivi tramite Wi-Fi dal menu delle configurazioni di esecuzione.
    Menu a discesa Esegui configurazioni
    Figura 1. Esegui configurazioni.

    Viene visualizzata la finestra di dialogo Accoppia i dispositivi tramite Wi-Fi, come mostrato nella Figura 2.
    Screenshot dell'accoppiamento dei dispositivi tramite la finestra popup Wi-Fi
    Figura 2. Finestra di dialogo per accoppiare i dispositivi tramite codice QR o codice di accoppiamento.
  2. Abilita le opzioni per sviluppatori sul tuo dispositivo.
  3. Attiva il debug tramite Wi-Fi sul dispositivo.
    Screenshot di un telefono Pixel che mostra l'impostazione Sistemi di debug wireless.
    Figura 3. L'impostazione Debug wireless su uno smartphone Google Pixel.
  4. Tocca Debug wireless e accoppia il tuo dispositivo:
    1. Per accoppiare il dispositivo con un codice QR, seleziona Accoppia dispositivo con codice QR e scansiona il codice QR, mostrato nella Figura 2.
    2. Per accoppiare il dispositivo con un codice di accoppiamento, seleziona Accoppia dispositivo con codice di accoppiamento dalla finestra di dialogo Accoppia nuovi dispositivi tramite Wi-Fi. Sul dispositivo, seleziona Accoppia utilizzando codice di accoppiamento. Viene visualizzato un codice a sei cifre. Quando il dispositivo viene visualizzato nella finestra Accoppia dispositivi tramite Wi-Fi, inserisci il codice a sei cifre visualizzato sul dispositivo e seleziona Accoppia .
      Screenshot dell'esempio di inserimento del codice di accoppiamento
      Figura 4. Esempio di inserimento del codice di accoppiamento a sei cifre.
  5. Dopo l'accoppiamento, puoi tentare di eseguire il deployment dell'app sul dispositivo.

Per accoppiare un altro dispositivo o per eliminare questo dispositivo sulla workstation:

  1. Vai a Debug wireless sul dispositivo.
  2. Tocca il nome della workstation in Dispositivi accoppiati.
  3. Seleziona Elimina.

Mirroring dispositivo

Puoi eseguire il mirroring del tuo dispositivo fisico nella finestra Dispositivi in esecuzione in Android Studio. Eseguendo lo streaming del display del tuo dispositivo direttamente su Android Studio, puoi utilizzare lo stesso IDE di Studio per eseguire azioni comuni come avviare le app e interagire con le app, ruotare lo schermo, piegare e aprire lo smartphone e regolare il volume.

Il mirroring del dispositivo è sempre disponibile quando al computer sono collegati dispositivi su cui è abilitato il debug USB o wireless. Puoi avviare e interrompere il mirroring utilizzando la finestra Dispositivi in esecuzione o la Gestione dispositivi (Visualizza > Finestre degli strumenti > Gestione dispositivi). Puoi anche stabilire quando attivare il mirroring dei dispositivi nelle relative impostazioni (Impostazioni > Strumenti > Mirroring dispositivo).

UI dispositivi in esecuzione

Problemi noti

Alcuni dispositivi potrebbero non essere in grado di eseguire la codifica con una velocità in bit sufficiente a supportare il mirroring del dispositivo. In questi casi, potresti visualizzare un errore nella finestra Dispositivi in esecuzione e in log simili all'esempio seguente.

2023-06-01 15:32:22,675 [  56094]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - Too many video encoder errors:
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - encoder: c2.android.vp8.encoder
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - mime type: video/x-vnd.on2.vp8
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max resolution: 640x640
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - min resolution: 2x2
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - alignment: 2x2
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate: 960
2023-06-01 15:32:22,676 [  56095]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max frame rate for 288x640: 960
2023-06-01 15:32:22,870 [  56289]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - max bitrate: 20000000
2023-06-01 15:32:22,871 [  56290]   WARN - ScreenSharingAgent Samsung SM-A045F API 33 - terminated with code 1

Informativa sulla privacy

In base alle impostazioni di mirroring del dispositivo, Android Studio può avviare automaticamente il mirroring del dispositivo per qualsiasi dispositivo connesso e accoppiato. Ciò potrebbe comportare la divulgazione di informazioni per i dispositivi connessi con il comando adb tcpip, in quanto le informazioni e i comandi di mirroring vengono passati su un canale non criptato. Inoltre, Android Studio utilizza un canale non criptato per comunicare con l'adb server, in modo che le informazioni del mirroring possano essere intercettate da altri utenti sulla macchina host.

Risolvere i problemi di connessione del dispositivo

Se il dispositivo non si connette ad Android Studio, prova a svolgere i seguenti passaggi per risolvere il problema:

Risolvere i problemi con l'Assistente connessioni

L'Assistente connessioni fornisce istruzioni dettagliate per aiutarti a configurare e utilizzare un dispositivo tramite la connessione ADB.

Per avviare l'assistente, scegli Strumenti > Risolvi i problemi di connessione dei dispositivi.

L'Assistente connessioni fornisce istruzioni, controlli contestuali e un elenco di dispositivi connessi in una serie di pagine del riquadro Assistente. Utilizza i pulsanti Avanti e Indietro nella parte inferiore del riquadro Assistente per esaminare le pagine in base alle tue esigenze:

  • Connetti il dispositivo tramite USB: per prima cosa, Connection Assistant ti chiede di connettere il dispositivo tramite USB e fornisce un pulsante Nuova scansione dispositivi USB per consentirti di avviare una nuova ricerca dei dispositivi connessi.
  • Attiva il debug USB: Connection Assistant ti spiega come attivare il debug USB nelle opzioni sviluppatore sul dispositivo.
  • Riavvia il server ADB: se il tuo dispositivo continua a non essere visibile nell'elenco dei dispositivi disponibili, utilizza il pulsante Riavvia il server ADB nell'ultima pagina di Connection Assistant. Il riavvio del server ADB fa sì che ADB cerchi di nuovo i dispositivi. Se il tuo dispositivo continua a non essere visualizzato nell'elenco dei dispositivi disponibili, prova a eseguire la procedura di risoluzione dei problemi descritta nella sezione seguente.

Risolvere i problemi di connessione USB

Se Assistente connessioni non rileva il dispositivo tramite USB, prova a svolgere i seguenti passaggi per la risoluzione dei problemi:

Verifica che Android Studio si connetta all'emulatore Android

Per verificare se il problema è causato da un problema di connessione tra Android Studio e l'emulatore Android, procedi nel seguente modo:

  1. Apri Gestione dispositivi.
  2. Crea una nuova durata di visualizzazione media se non ne hai ancora una.
  3. Esegui l'emulatore utilizzando la durata di visualizzazione media.
  4. Esegui una delle seguenti operazioni:
    • Se Android Studio non riesce a connettersi all'emulatore, scarica la versione più recente degli SDK Platform Tools e riprova.
    • Se l'emulatore si avvia correttamente, controlla il cavo USB come descritto nella sezione seguente.

Controlla il cavo USB

Per verificare se il problema è causato da un cavo USB difettoso, segui i passaggi descritti in questa sezione.

Se hai un altro cavo USB:

  1. Collega il dispositivo usando il cavo secondario.
  2. Controlla se l'Assistente connessioni è ora in grado di rilevare il dispositivo.
  3. Se il dispositivo non viene rilevato, riprova a utilizzare il cavo principale.
  4. Se il dispositivo continua a non essere rilevato, presuppone che il problema riguardi il dispositivo e controlla se il dispositivo è configurato per lo sviluppo come descritto nella sezione seguente.

Se non hai un altro cavo USB, ma hai un altro dispositivo Android:

  1. Collega il dispositivo secondario al computer.
  2. Se Assistente connessioni è in grado di rilevare il dispositivo secondario, supponiamo che il problema riguardi il dispositivo principale e controlla se il dispositivo è configurato per lo sviluppo.

    Se non viene rilevato il dispositivo secondario, il problema potrebbe riguardare il cavo USB.

Controlla se il dispositivo è configurato per lo sviluppo

Per verificare se il problema è causato dalle impostazioni del dispositivo, svolgi i seguenti passaggi:

  1. Segui i passaggi nella sezione Configurare un dispositivo per lo sviluppo.
  2. Se il problema persiste, contatta l'assistenza clienti dell'OEM del dispositivo. Comunica al rappresentante dell'assistenza clienti che il dispositivo non si connette ad Android Studio tramite ADB.

Risolvere i problemi di connessione wireless

Se hai difficoltà a connetterti al tuo dispositivo in modalità wireless, puoi provare a risolvere il problema svolgendo i seguenti passaggi:

Verifica se la tua workstation e il tuo dispositivo soddisfano i prerequisiti

Per soddisfare i prerequisiti per il debug wireless, assicurati che:

Verifica la presenza di altri problemi noti

Di seguito è riportato un elenco degli attuali problemi noti relativi al debug wireless in Android Studio e delle relative soluzioni:

  • Il Wi-Fi non si connette. Alcune reti Wi-Fi, ad esempio le reti Wi-Fi aziendali, potrebbero bloccare le connessioni p2p e non consentirti di connetterti tramite Wi-Fi. Prova a connetterti con un cavo o un'altra rete Wi-Fi.
  • A volte l'ADB tramite Wi-Fi si disattiva automaticamente. Questo può accadere se il dispositivo cambia rete Wi-Fi o si disconnette dalla rete.

Token di sicurezza RSA

Quando connetti al computer un dispositivo con Android 4.2.2 (livello API 17) o versioni successive, il sistema mostra una finestra di dialogo che chiede se accettare una chiave RSA che consente il debug tramite questo computer. Questo meccanismo di sicurezza protegge i dispositivi degli utenti perché è possibile eseguire il debug USB e altri comandi adb solo se riesci a sbloccare il dispositivo e confermare la finestra di dialogo.