ERRORE: i binari dell'emulatore Android Linux a 32 bit sono DEPRECATI quando si tenta di eseguire l'emulatore Android


14

Ho impostato l'ambiente di sviluppo Android in Ubuntu 10.10, 32 bit. Dopo aver creato l'AVD quando ho lanciato l'emulatore ho ricevuto il seguente errore.

ERRORE: i binari dell'emulatore Linux Android a 32 bit sono DEPRECATI, per usarli
dovrai fare almeno una delle seguenti operazioni:
- Usa l'opzione '-force-32bit' quando invochi 'emulator'.
- Imposta ANDROID_EMULATOR_FORCE_32BIT su 'true' nel tuo ambiente.
Uno dei due ti consentirà di utilizzare i file binari a 32 bit, ma tieni presente che questi scompariranno in una futura versione di Android SDK.
Prendi in considerazione l'idea di passare a un sistema Linux a 64 bit prima che ciò accada.

La versione ADT che sto usando è il 23.0.3.1327240. Le librerie SDK che sto usando sono a 32 bit. mi aiuti gentilmente. Grazie.


1
Passa a una nuova versione passa a 64 bit.
Mateo,

4
È necessario eseguire l'aggiornamento a una versione di Ubuntu supportata. Normalmente chiuderemmo questo come non supportato, ma poiché questo problema non è proprio specifico di una versione precedente e penso che altre persone potrebbero riscontrare questo problema su una versione supportata, lo lascerò. Ma consiglio vivamente di eseguire l'aggiornamento ad almeno 12.04.
Seth,

3
Sono d'accordo: questo è nella minoranza di nuove domande su un problema in una versione EoL in cui (a) sappiamo che la risposta è indipendente dal rilascio, e (b) sia la domanda che la risposta (perché comportano un'attività comune con un trappola non ovvia) sembra che possano avere un valore particolarmente alto per gli altri. Questo potrebbe essere modificato per generalizzarlo a tutte le versioni, ma dovremmo tenerlo aperto. @MohanrajMani Ma per favore non continuare a usare 10.10. Non è supportato da molto tempo e parte di ciò significa che non è aggiornato per correggere le vulnerabilità di sicurezza appena scoperte. È rischioso da usare.
Eliah Kagan,

1
Questo non ha nulla a che fare con Ubuntu 10.10, ma è specificamente dovuto al tentativo di utilizzare l'emulatore Android su una distribuzione Linux a 32 bit quando è stato progettato per 64 bit. la stessa cosa accadrà su Ubuntu 12.xx e 14.xx se si utilizza la distribuzione Intel 386. Inoltre, per ultimo ho verificato che non puoi passare a 64 bit. 64 bit è supportato solo su AMD, 32 bit è supportato solo su Intel.
JSON,

1
@JSON La versione a 64 bit di Ubuntu funziona su processori AMD a 64 bit e Intel a 64 bit. "Amd" in "amd64" non significa che sia solo AMD. Allo stesso modo, la versione a 32 bit funziona su processori AMD (32- e -64-bit) e Intel (32 e -64-bit) - la "i" in "i386" non significa che è solo Intel . Vedi La versione a 64 bit di Ubuntu è compatibile solo con le CPU AMD? e differenza tra il download di i386 e amd64? per dettagli. (Sono d'accordo che questa domanda non è specifica per la versione 10.10 di Ubuntu.)
Eliah Kagan,

Risposte:


15

Stai ricevendo questo errore perché apparentemente stai eseguendo un sistema a 32 bit e l'emulatore Android è progettato per funzionare al meglio in un ambiente a 64 bit. L'unica vera soluzione è installare un sistema operativo a 64 bit.

Se il tuo hardware non supporta 64 bit o non puoi reinstallarlo in questo momento, puoi temporaneamente bypassare il problema passando -force-32bitquando avvii l'emulatore dalla riga di comando o impostando ANDROID_EMULATOR_FORCE_32BITsu truenel tuo ambiente (come dice l'errore). Puoi farlo eseguendo:

gedit .profile  

Da un terminale Aggiungi il testo:

export ANDROID_EMULATOR_FORCE_32BIT=true  

alla fine del file e salvarlo e chiuderlo. Non posso provarlo in questo momento, ma dovrai eseguire source .profiledal terminale o riavviare per rendere effettive le modifiche.

Prova ad avviare l'emulatore.

Si consiglia vivamente di installare un sistema operativo a 64 bit per continuare lo sviluppo di Android perché Google alla fine rimuoverà i binari a 32 bit che impediranno al tuo emulatore di funzionare. Anche lo stesso Android si sta muovendo verso un'architettura x64, quindi rimanendo a 32 bit rimarrai presto indietro.


4

ho un'ottima soluzione. puoi avviarlo con eclissi o netbeans. provare :

  1. In Eclipse, fai clic sulla cartella del tuo progetto Android e seleziona Esegui> Esegui configurazioni ...

  2. Nel pannello di sinistra della finestra di dialogo Esegui configurazioni, seleziona la configurazione di esecuzione del progetto Android o crea una nuova configurazione.

  3. Fai clic sulla scheda Target.

Nel campo Opzioni della riga di comando dell'emulatore aggiuntivo, immettere:

-force-32bit

Esegui il tuo progetto Android usando questa configurazione di esecuzione.

in netbeans: 1. dove hai scelto il debug hai scelto Personalizza ...

  1. nelle opzioni dell'emulatore scrivi -force-32bit
  2. clicca ok ed eseguire l'applicazione

1

Modifica questo file:

terminale aperto in Ubuntu

gedit .bashrc

incolla questo testo:

export ANDROID_EMULATOR_FORCE_32BIT=true

fonte di aggiornamento:

source ~/.bashrc

3
~/.bashrcnon ha bisogno di essere modificato come root, quindi non c'è motivo di usarlo sudoper questo. (Oltre a questo, questa è una risposta ragionevole e utile, anche se suggerirei di inserire quella variabile d'ambiente ~/.profileinvece come suggerisce Seth o forse anche di inserire il compito - vale a dire, senza export- in `~ / .pam_environment.)
Eliah Kagan

@EliahKagan Alla luce di questo Q / A forse ~/.profilenon è il posto migliore dopo tutto? Sono un po 'confuso perché il wiki ha suggerito specificamente di posizionare le variabili di ambiente in ~/.profile...
Seth,

1

creare uno script di shell:

#!/bin/bash
#
#   set export ANDROID_EMULATOR_FORCE_32BIT=true

export ANDROID_EMULATOR_FORCE_32BIT=true
/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse

Cambia lo script della shell in eseguibile ed eseguilo per avviare eclipse

/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse è il percorso dell'eseguibile di eclissi.


Questo ha funzionato quando si utilizza Titanium, ma è sufficiente modificare il loro file SH. Quindi funziona.
jfreak53,

1

Ho risolto questo problema aggiornando la configurazione dell'emulatore in Android Studio come segue.

  1. Vai al menu Esegui -> Modifica configurazione .. in Android Studio
  2. Seleziona il nome dell'app in Applicazione Android nel riquadro a sinistra
  3. Seleziona la scheda Emulatore nel riquadro a destra
  4. Spuntare "Opzioni aggiuntive della riga di comando:" e inserire -force-32bit nella casella di testo accanto ad essa
  5. Seleziona "OK" e prova a eseguire nuovamente l'app.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.