Android: running emulator classified as hardware when adb device name is not generic*, so --virtual fails with ERR_NO_TARGET
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 82/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- android, typescript
- Área
- mobile-dev
Línea de trabajo
Empieza en dist/android/utils/adb.js, en parseAdbDevices, donde el issue señala la comprobación del nombre device: que clasifica los dispositivos ADB. Verifica el comportamiento con las propiedades reportadas de emulator-5554 y revisa las pruebas de Android para listar dispositivos. La tarea está hecha cuando un emulator-<port> conectado aparece como virtual aunque su nombre de dispositivo sea emu64xa16k, y se puede seleccionar con --virtual.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Version: native-run 2.0.3 (latest on npm)
Platform: Linux x86_64, Android Emulator 37.1.11, AVD from the Pixel 10 profile with a 16 KB page-size system image (sdk_gphone16k_x86_64, API 37)
Description
A running emulator is classified as hardware, so --virtual cannot select it and run fails with ERR_NO_TARGET, even though adb lists the emulator as connected.
adb devices -l reports:
emulator-5554 device product:sdk_gphone16k_x86_64 model:sdk_gphone16k_x86_64 device:emu64xa16k transport_id:1
dist/android/utils/adb.js (parseAdbDevices) only treats a serial as an emulator when its device: property starts with generic:
const isGenericDevice = (properties['device'] || '').startsWith('generic');
const type = 'usb' in properties || isIP || !serial.startsWith('emulator') || !isGenericDevice ? 'hardware' : 'emulator';
Current emulator system images report device:emu64xa16k (and similar emu64* values), not generic*. The emulator therefore becomes type: 'hardware'.
Steps to reproduce
- Start an AVD whose system image reports a non-
genericdevice name, e.g. a recent Google APIs / 16 KB page-size image. native-run android --list --jsonlists it underdevices, andvirtualDevicesstays empty.native-run android --app app-debug.apk --virtualfails:
ERR_NO_TARGET: No target devices/emulators available.
The same command without --virtual installs on the emulator, because it is picked as a hardware device.
ionic cordova run android --emulator maps to --virtual, so Ionic Cordova live reload on an emulator is affected.
Expected
A serial of the form emulator-<port> that adb reports in the device state is a running emulator, whatever its device: property says. --virtual should select it.
Possible fix
Classify emulator-<port> serials as emulators without depending on the device: name, or additionally accept the emu* prefix. Alternatively, check ro.kernel.qemu / ro.boot.qemu from getprop, which getDevices already reads.
Related
#324: AVD home resolution ignores $ANDROID_USER_HOME/XDG locations. In the same setup that compounds this bug, because the fallback that would boot an AVD finds none.
- Lenguaje dominante
- TypeScript
- Estrellas
- 139
- Forks
- 35
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ionic-team/native-run
-
Dificultad 3/5 1-2 días Aptitud para principiantes 66/100
ionic-team/native-run#410 · 1 comentario ·
-
tools not found?Abiertoandroid
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
ionic-team/native-run#395 ·
-
android
Dificultad 3/5 1-2 días Aptitud para principiantes 28/100
ionic-team/native-run#390 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 38/100
ionic-team/native-run#389 ·
-
android
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
ionic-team/native-run#387 · 1 reacción ·
Todos los issues de ionic-team/native-run
Issues similares
-
needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
microsoft/playwright#43875 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
feature
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
calagopus/panel#285 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 Menos de una hora Aptitud para principiantes 88/100
adobe/react-spectrum#10909 ·
Los mantenedores suelen responder en 1 día
-
Keybind conflict with "Tileset"Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Run the dependency drift checkPosiblemente ocupada @spaceninja la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
cloudfour/lighthouse-parade#449 ·
Los mantenedores suelen responder en 1 día