Modifica delle proprietà del dispositivo virtuale Android

Questo articolo illustra come usare Android Device Manager per modificare le proprietà del profilo di un dispositivo virtuale Android.

Android Device Manager su Windows

Android Device Manager supporta la modifica delle singole proprietà del profilo di un dispositivo virtuale Android. Le schermate New Device (Nuovo dispositivo) e Device Editor (Editor dispositivi) elencano le proprietà del dispositivo virtuale nella prima colonna e i valori corrispondenti di ogni proprietà nella seconda colonna (come in questo esempio):

Example New Device screen

Quando si seleziona una proprietà, sul lato destro viene visualizzata una descrizione dettagliata di tale proprietà. È possibile modificare le proprietà del profilo hardware e le proprietà del dispositivo virtuale Android. Le proprietà del profilo hardware (ad esempio hw.ramSize e hw.accelerometer) descrivono le caratteristiche fisiche del dispositivo di emulazione. Tali caratteristiche includono le dimensioni dello schermo, la quantità di RAM disponibile e la presenza o meno di un accelerometro. Le proprietà AVD specificano il funzionamento del dispositivo AVD quando è in esecuzione. Ad esempio è possibile configurare le proprietà AVD per specificare come il dispositivo AVD usa la scheda grafica del computer di sviluppo per il rendering.

È possibile modificare le proprietà in base alle linee guida seguenti:

  • Per modificare una proprietà booleana, fare clic sul segno di spunta a destra della proprietà:

    Changing a boolean property

  • Per modificare una proprietà enum (di enumerazione), fare clic sulla freccia giù a destra della proprietà e scegliere un nuovo valore.

    Changing an enum property

  • Per modificare una proprietà di tipo string o integer, fare doppio clic sull'impostazione corrente della proprietà nella colonna del valore e immettere un nuovo valore.

    Changing an integer property

Android Device Manager su macOS

Android Device Manager supporta la modifica delle singole proprietà del profilo di un dispositivo virtuale Android. Le schermate New Device (Nuovo dispositivo) e Device Editor (Editor dispositivi) elencano le proprietà del dispositivo virtuale nella prima colonna e i valori corrispondenti di ogni proprietà nella seconda colonna (come in questo esempio):

Example New Device screen

Quando si seleziona una proprietà, sul lato destro viene visualizzata una descrizione dettagliata di tale proprietà. È possibile modificare le proprietà del profilo hardware e le proprietà del dispositivo virtuale Android. Le proprietà del profilo hardware (ad esempio hw.ramSize e hw.accelerometer) descrivono le caratteristiche fisiche del dispositivo di emulazione. Tali caratteristiche includono le dimensioni dello schermo, la quantità di RAM disponibile e la presenza o meno di un accelerometro. Le proprietà AVD specificano il funzionamento del dispositivo AVD quando è in esecuzione. Ad esempio è possibile configurare le proprietà AVD per specificare come il dispositivo AVD usa la scheda grafica del computer di sviluppo per il rendering.

È possibile modificare le proprietà in base alle linee guida seguenti:

  • Per modificare una proprietà booleana, fare clic sul segno di spunta a destra della proprietà:

    Changing a boolean property

  • Per modificare una proprietà enum (di enumerazione), fare clic sul menu a discesa a destra della proprietà e scegliere un nuovo valore.

    Changing an enum property

  • Per modificare una proprietà di tipo string o integer, fare doppio clic sull'impostazione corrente della proprietà nella colonna del valore e immettere un nuovo valore.

    Changing an integer property

La tabella seguente spiega in dettaglio le proprietà elencate nelle schermate New Device (Nuovo dispositivo) e Device Editor (Editor dispositivi):

Proprietà Descrizione Opzioni
abi.type Tipo ABI: specifica il tipo di interfaccia ABI (Application Binary Interface) del dispositivo emulato. L'opzione x86 è per il set di istruzioni comunemente definito "x86" o "IA-32". L'opzione x86_64 è per il set di istruzioni x86 a 64 bit. L'opzione armeabi-v7a è usata per il set di istruzioni ARM con le estensioni ARM v7-a. L'opzione arm64 v8a è usata per il set di istruzioni ARM che supporta AArch64. x86, x86_64, armeabi-v7a, arm64-v8a
disk.cachePartition Partizione cache: determina se il dispositivo emulato userà una partizione /cache nel dispositivo. La partizione /cache (inizialmente vuota) è il percorso in cui Android archivia i dati e i componenti dell'app usati di frequente. Se impostato su no, l'emulatore non userà una partizione /cache e le altre impostazioni disk.cache verranno ignorate. yes, no
disk.cachePartition.path Percorso della partizione cache: specifica un file di immagine di partizione cache nel computer di sviluppo. L'emulatore userà questo file per la partizione /cache. Immettere un percorso assoluto o relativo della directory dei dati dell'emulatore. Se non è impostato, l'emulatore crea un file temporaneo vuoto denominato cache.img nel computer di sviluppo. Se il file non esiste, viene creato un file vuoto. Questa opzione viene ignorata se disk.cachePartition è impostato su no.
disk.cachePartition.size Dimensioni della partizione cache: dimensioni del file di partizione della cache (in byte). In genere non è necessario impostare questa opzione, a meno che l'app non scaricherà file molto grandi, che superano la dimensione della cache predefinita di 66 megabyte. Questa opzione viene ignorata se disk.cachePartition è impostato su no. Se questo valore è un numero intero, specifica le dimensioni in byte. È anche possibile specificare le dimensioni in kilobyte, megabyte e gigabyte aggiungendo K, M o G al valore. Le dimensioni minime sono 9M e le dimensioni massime sono 1023G.
disk.dataPartition.initPath Percorso iniziale della partizione dati: specifica il contenuto iniziale della partizione dati. Dopo la cancellazione dei dati utente, l'emulatore copia il contenuto del file specificato nei dati utente (per impostazione predefinita, userdata-qemu.img), invece di usare userdata.img come versione iniziale.
disk.dataPartition.path Percorso della partizione dati: specifica il file di partizione dei dati utente. Per configurare un file di dati utente persistente, immettere il nome e il percorso del file nel computer di sviluppo. Se il file non esiste, l'emulatore crea un'immagine dal file predefinito userdata.img, la archivia nel nome di file specificato da disk.dataPartition.path e la usa per rendere persistenti i dati utente quando l'emulatore viene arrestato. Se non si specifica un percorso, il file predefinito è denominato userdata-qemu.img. Il valore <speciale temp> fa sì che l'emulatore crei e usi un file temporaneo. Se si imposta disk.dataPartition.initPath, il relativo contenuto verrà copiato nel file disk.dataPartition.path in fase di avvio. Si noti che questa opzione non può essere vuota.
disk.dataPartition.size Dimensioni della partizione dati: specifica le dimensioni della partizione dati utente in byte. Se questo valore è un numero intero, specifica le dimensioni in byte. È anche possibile specificare le dimensioni in kilobyte, megabyte e gigabyte aggiungendo K, M o G al valore. Le dimensioni minime sono 9M e le dimensioni massime sono 1023G.
disk.ramdisk.path Percorso di ramdisk: percorso dell'immagine (ramdisk) della partizione di avvio. L'immagine ramdisk è un subset dell'immagine di sistema che viene caricata dal kernel prima del montaggio dell'immagine di sistema. L'immagine ramdisk in genere contiene file binari e script di inizializzazione usati in fase di avvio. Se questa opzione non è specificata, il valore predefinito è ramdisk.img nella directory di sistema dell'emulatore.
disk.snapStorage.path Percorso di archiviazione snapshot: percorso del file di archiviazione snapshot in cui vengono archiviati tutti gli snapshot. Tutti gli snapshot creati durante l'esecuzione verranno salvati in questo file. È possibile ripristinare solo gli snapshot salvati in questo file durante l'esecuzione dell'emulatore. Se questa opzione non è specificata, il valore predefinito è snapshots.img nella directory dei dati dell'emulatore.
disk.systemPartition.initPath Percorso di inizializzazione della partizione di sistema: percorso della copia di sola lettura del file di immagine di sistema; in particolare, la partizione che contiene le librerie di sistema e i dati corrispondenti al livello API e a qualsiasi variante. Se questo percorso non è specificato, il valore predefinito è system.img nella directory di sistema dell'emulatore.
disk.systemPartition.path Percorso della partizione di sistema: percorso dell'immagine della partizione di sistema di lettura/scrittura. Se questo percorso non è impostato, verrà creato e inizializzato un file temporaneo dal contenuto del file specificato da disk.systemPartition.initPath.
disk.systemPartition.size Dimensioni della partizione di sistema: dimensioni ideali della partizione di sistema (in byte). La dimensione viene ignorata se l'immagine della partizione di sistema effettiva è superiore a questa impostazione. In caso contrario, specifica la dimensione massima che può raggiungere il file della partizione di sistema. Se questo valore è un numero intero, specifica le dimensioni in byte. È anche possibile specificare le dimensioni in kilobyte, megabyte e gigabyte aggiungendo K, M o G al valore. Le dimensioni minime sono 9M e le dimensioni massime sono 1023G.
hw.accelerometer Accelerometro: determina se il dispositivo emulato contiene un sensore per l'accelerometro. L'accelerometro consente al dispositivo di determinare l'orientamento (usato per la rotazione automatica). L'accelerometro segnala l'accelerazione del dispositivo lungo i tre assi del sensore. yes, no
hw.audioInput Supporto della registrazione di audio: determina se il dispositivo emulato può registrare audio. yes, no
hw.audioOutput Supporto della riproduzione di audio: determina se il dispositivo emulato può riprodurre audio. yes, no
hw.battery Supporto della batteria: determina se il dispositivo emulato può essere alimentato da una batteria. yes, no
hw.camera Supporto della fotocamera: determina se il dispositivo emulato dispone di una fotocamera. yes, no
hw.camera.back Fotocamera posteriore: configura la fotocamera posteriore (l'obiettivo rivolto verso il lato opposto all'utente). Se si usa una webcam nel computer di sviluppo per simulare la fotocamera posteriore del dispositivo emulato, questo valore deve essere impostato su webcamn, dove n seleziona la webcam (se è presente una sola webcam, scegliere webcam0). Se impostato su emulated, l'emulatore simula la fotocamera nel software. Per disabilitare la fotocamera posteriore, impostare questo valore su none. Se si abilita la fotocamera posteriore, assicurarsi di abilitare anche hw.camera. emulated, none, webcam0
hw.camera.front Fotocamera anteriore: configura la fotocamera anteriore (l'obiettivo rivolto verso l'utente). Se si usa una webcam nel computer di sviluppo per simulare la fotocamera anteriore del dispositivo emulato, questo valore deve essere impostato su webcamn, dove n seleziona la webcam (se è presente una sola webcam, scegliere webcam0). Se impostato su emulated, l'emulatore simula una fotocamera nel software. Per disabilitare la fotocamera anteriore, impostare questo valore su none. Se si abilita la fotocamera anteriore, assicurarsi di abilitare anche hw.camera. emulated, none, webcam0
hw.camera.maxHorizontalPixels Numero massimo di pixel della fotocamera in orizzontale: consente di configurare la risoluzione massima orizzontale della fotocamera del dispositivo emulato (in pixel).
hw.camera.maxVerticalPixels Numero massimo di pixel della fotocamera in verticale: consente di configurare la risoluzione massima verticale della fotocamera del dispositivo emulato (in pixel).
hw.cpu.arch Architettura della CPU: architettura della CPU che deve essere emulata dal dispositivo virtuale. Se si usa Intel HAXM per l'accelerazione hardware, selezionare x86 per una CPU a 32 bit. Selezionare x86_64 per un dispositivo con accelerazione HAXM a 64 bit. Assicurarsi di installare l'immagine di sistema Intel x86 corrispondente in SDK Manager, ad esempio Intel x86 Atom o Intel x86 Atom_64. Per simulare una CPU ARM, selezionare arm per 32 bit o selezionare arm64 per una CPU ARM a 64 bit. Tenere presente che i dispositivi virtuali basati su ARM verranno eseguiti molto più lentamente rispetto a quelli basati su x86, perché l'accelerazione hardware non è disponibile per ARM. x86, x86_64, arm, arm64
hw.cpu.model Modello CPU: questo valore viene in genere lasciato non impostato (verrà impostato su un valore derivato da hw.cpu.arch se non è impostato in modo esplicito). Può tuttavia essere impostato su una stringa specifica dell'emulatore per uso sperimentale.
hw.dPad Tasto direzionale: determina se il dispositivo emulato supporta il tasto direzionale. Un tasto direzionale in genere include quattro tasti per indicare il controllo direzionale. yes, no
hw.gps Supporto GPS: determina se il dispositivo emulato dispone di un ricevitore GPS (Global Positioning System). yes, no
hw.gpu.enabled Emulazione della GPU: determina se il dispositivo emulato supporta l'emulazione della GPU. Se abilitata, l'emulazione della GPU usa Open GL for Embedded Systems (OpenGL ES) per il rendering della grafica 2D e 3D sullo schermo e l'impostazione associata per la modalità di emulazione della GPU determina il modo in cui viene implementata l'emulazione della GPU. yes, no
hw.gpu.mode Modalità di emulazione della GPU: determina in che modo l'emulatore implementa l'emulazione della GPU. Se si seleziona auto, l'emulatore sceglierà l'accelerazione hardware e software in base all'impostazione del computer di sviluppo. Se si seleziona host, l'emulatore userà il processore grafico del computer di sviluppo per eseguire l'emulazione della GPU, in modo da velocizzare il rendering. Se la GPU non è compatibile con l'emulatore e si usa Windows, è possibile provare a usare angle anziché host. La modalità angle usa DirectX per offrire prestazioni simili a quelle di host. Se si seleziona mesa, l'emulatore userà la libreria software Mesa 3D per il rendering della grafica. Selezionare mesa se si verificano problemi durante il rendering tramite il processore grafico del computer di sviluppo. La modalità swiftshader può essere usata per il rendering della grafica nel software, con prestazioni leggermente inferiori rispetto all'uso della GPU del computer. L'opzione off, che disabilita emulazione dell'hardware grafico, è un'opzione deprecata che può causare errori di rendering di alcuni elementi e pertanto non è consigliata. auto, host, mesa, angle, swiftshader, off
hw.gsmModem Supporto del modem GSM: determina se il dispositivo emulato include un modem che supporta il sistema di radiotelefonia GSM (Global System for Mobile Communications). yes, no
hw.initialOrientation Orientamento iniziale dello schermo: configura l'orientamento iniziale dello schermo nel dispositivo emulato (modalità verticale o orizzontale). In modalità verticale, l'altezza dello schermo è superiore alla larghezza. In modalità orizzontale, la larghezza dello schermo è superiore all'altezza. Quando si esegue il dispositivo emulato, è possibile modificare l'orientamento se sono supportati sia l'orientamento verticale che quello orizzontale nel profilo del dispositivo. portrait, landscape
hw.keyboard Supporto della tastiera: determina se il dispositivo emulato supporta una tastiera QWERTY. yes, no
hw.keyboard.charmap Nome della mappa caratteri della tastiera: nome della mappa caratteri hardware per il dispositivo. NOTA: deve sempre essere il valore predefinito qwerty2, a meno che l'immagine di sistema non sia stata modificata di conseguenza. Questo nome viene inviato al kernel in fase di avvio. L'uso di un nome errato renderà inutilizzabile il dispositivo virtuale.
hw.keyboard.lid Supporto per il coperchio della tastiera: se il supporto della tastiera è abilitato, questa impostazione determina se la tastiera QWERTY può essere chiusa/nascosta o aperta/visibile. Questa impostazione verrà ignorata se hw.keyboard è impostato su false. NOTA: il valore predefinito è false se la destinazione del dispositivo emulato è il livello API 12 o superiore. yes, no
hw.lcd.backlight Retroilluminazione LCD: determina se la retroilluminazione LCD viene simulata dal dispositivo emulato. yes, no
hw.lcd.density Densità LCD: densità dello schermo LCD emulato, misurata in pixel indipendenti dalla densità o dp (dp è un'unità pixel virtuale). Quando l'impostazione è 160 dp, ogni dp corrisponde a un pixel fisico. In fase di esecuzione, Android usa questo valore per selezionare e ridimensionare le risorse o gli asset appropriati per il rendering corretto della visualizzazione. 120, 160, 240, 213, 320
hw.lcd.depth Intensità di colore LCD: l'intensità in bit dei colori del buffer del frame emulato che contiene la mappa di bit per lo schermo LCD. Questo valore può essere 16 bit (65.536 colori possibili) o 32 bit (16.777.216 colori più trasparenza). L'impostazione a 32 bit può rallentare leggermente l'esecuzione dell'emulatore, ma con una maggiore precisione dei colori. 16, 32
hw.lcd.height Altezza in pixel LCD: numero di pixel che compongono la dimensione verticale dello schermo LCD emulato.
hw.lcd.width Larghezza in pixel LCD: numero di pixel che compongono la dimensione orizzontale dello schermo LCD emulato.
hw.mainKeys Tasti hardware Indietro/Home: determina se il dispositivo emulato supporta i pulsanti di navigazione hardware Indietro e Home. È possibile impostare questo valore su yes se i pulsanti sono implementati solo nel software. Se hw.mainKeys è impostato su yes, l'emulatore non visualizza i pulsanti di spostamento sullo schermo, ma è possibile usare il pannello laterale dell'emulatore per "premere" questi pulsanti. yes, no
hw.ramSize Dimensione della RAM del dispositivo: quantità di RAM fisica sul dispositivo emulato, in megabyte. Il valore predefinito verrà calcolato dalle dimensioni dello schermo o dalla versione dell'interfaccia. L'aumento delle dimensioni può velocizzare l'esecuzione dell'emulatore, ma a scapito di una maggiore richiesta di risorse del computer di sviluppo.
hw.screen Tipo di touchscreen: definisce il tipo di schermo del dispositivo emulato. Uno schermo multi-touch è in grado di tenere traccia di due o più dita sull'interfaccia touch. Uno schermo touch può rilevare solo gli eventi di tocco con un singolo dito. Uno schermo no-touch non rileva gli eventi di tocco. touch, multi-touch, no-touch
hw.sdCard Supporto delle schede SD: determina se il dispositivo emulato supporta l'inserimento e rimozione di schede SD (Secure Digital) virtuali. L'emulatore usa immagini disco montabili archiviate nel computer di sviluppo per simulare le partizioni degli effettivi dispositivi con scheda SD (vedere hw.sdCard.path). yes, no
sdcard.size Dimensioni SDCard: specifica le dimensioni del file della scheda SD virtuale nel percorso specificato da hw.sdCard.path. disponibile nel dispositivo (in byte). Se questo valore è un numero intero, specifica le dimensioni in byte. È anche possibile specificare le dimensioni in kilobyte, megabyte e gigabyte aggiungendo K, M o G al valore. Le dimensioni minime sono 9M e le dimensioni massime sono 1023G.
hw.sdCard.path Percorso dell'immagine della scheda SD: specifica il nome e il percorso di un file di immagine di partizione della scheda SD nel computer di sviluppo. È ad esempio possibile impostare questo percorso su C:\sd\sdcard.img in Windows.
hw.sensors.magnetic_field Sensore di campo magnetico: determina se il dispositivo emulato supporta un sensore di campo magnetico. Il sensore di campo magnetico (anche denominato magnetometro) segnala il campo geomagnetico dell'ambiente misurato lungo i tre assi del sensore. Abilitare questa impostazione per le app che richiedono l'accesso a una lettura della bussola. Ad esempio, un'app di navigazione può usare questo sensore per rilevare la direzione verso cui è rivolto l'utente. yes, no
hw.sensors.orientation Sensore di orientamento: determina se il dispositivo emulato fornisce i valori del sensore di orientamento. Il sensore di orientamento misura i gradi di rotazione di un dispositivo intorno a tutti e tre gli assi fisici (x, y, z). Si noti che il sensore di orientamento è stato deprecato a partire da Android 2.2 (livello API 8). yes, no
hw.sensors.proximity Sensore di prossimità: determina se il dispositivo emulato supporta un sensore di prossimità. Questo sensore misura la prossimità di un oggetto rispetto allo schermo di un dispositivo. Questo sensore è in genere usato per determinare se un ricevitore viene tenuto vicino all'orecchio di una persona. yes, no
hw.sensors.temperature Sensore di temperatura: determina se il dispositivo emulato supporta un sensore di temperatura. Questo sensore misura la temperatura del dispositivo in gradi Celsius (°C). yes, no
hw.touchScreen Supporto del touchscreen: determina se il dispositivo emulato supporta un touchscreen. Il touchscreen viene usato per la modifica diretta degli oggetti sullo schermo. yes, no
hw.trackBall Supporto della trackball: determina se il dispositivo emulato supporta una trackball. yes, no
hw.useext4 Supporto del file system EXT4: determina se il dispositivo emulato usa il file system Linux EXT4 per le partizioni. Poiché il tipo di file system ora viene rilevato automaticamente, questa opzione è deprecata e viene ignorata. no
kernel.newDeviceNaming Nuova denominazione del dispositivo per il kernel: usato per specificare se il kernel richiede un nuovo schema di denominazione del dispositivo. In genere viene usato con i kernel Linux 3.10 e versioni successive. Se impostato su autodetect, l'emulatore rileverà automaticamente se il kernel richiede un nuovo schema di denominazione del dispositivo. autodetect, yes, no
kernel.parameters Parametri del kernel: specifica la stringa di parametri di avvio del kernel Linux. Per impostazione predefinita, questa impostazione è vuota.
kernel.path Percorso del kernel: specifica il percorso del kernel Linux. Se questo percorso non è specificato, l'emulatore esegue una ricerca di kernel-ranchu nella directory di sistema dell'emulatore.
kernel.supportsYaffs2 Supporto delle partizioni YAFFS2: determina se il kernel supporta le partizioni YAFFS2 (Yet Another Flash File System 2). In genere, si applica solo ai kernel precedenti a Linux 3.10. Se impostato su autodetect, l'emulatore rileverà automaticamente se il kernel può eseguire il montaggio di file system YAFFS2. autodetect, yes, no
skin.name Nome dell'interfaccia: nome di un'interfaccia dell'emulatore Android. Un'interfaccia è una raccolta di file che definisce gli elementi visivi e di controllo di una visualizzazione dell'emulatore. Descrive l'aspetto della finestra del dispositivo virtuale Android nel computer di sviluppo. Un'interfaccia descrive le dimensioni dello schermo, i pulsanti e la struttura complessiva, ma non influisce sulle operazioni dell'app.
skin.path Percorso interfaccia: percorso della directory contenente i file dell'interfaccia dell'emulatore specificati in skin.name Questa directory contiene hardware.ini file di layout e file di immagine per gli elementi di visualizzazione dell'interfaccia utente.
skin.dynamic Interfaccia dinamica: determina se l'interfaccia è dinamica o meno. L'interfaccia dell'emulatore è un'interfaccia dinamica se l'emulatore deve creare un'interfaccia di una determinata dimensione in base a una larghezza e un'altezza specificate. no

Per altre informazioni su queste proprietà, vedere Hardware Profile Properties (Proprietà del profilo hardware).