Tengo un proyecto IntelliJ para Android, que importé con éxito a Android Studio 0.4.0. Funciona perfectamente si no cambio nada en manifiesto. Sin embargo, cuando quiero cambiar la actividad del iniciador y ejecutarlo, falla con este error:
Launching application: com.trackingeng/LandingActivity.
DEVICE SHELL COMMAND: am start -D -n "com.trackingeng/LandingActivity"
-a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Starting: Intent { act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] cmp=com.trackingeng/LandingActivity }
Error type 3
Error: Activity class {com.trackingeng/LandingActivity} does not exist.
Cuando hago clic en Sincronizar proyecto con archivos Gradle , genera:
Project Sync
The project 'TrackingEng' is not a Gradle-based project
Ejecutar configuración:
AndroidManifest.xml
o no.Error: Activity class {...} does not exist.
me resolvió .Respuestas:
Me enfrenté a un problema similar después de refactorizar.
Esto es lo que hice para resolver este problema:
Build
directorio¡Y todo funcionó bien!
Creo que la clave es reiniciar su IDE .
¡Espero que esto te ayude a ti o a alguien más!
Edición 1:
si los pasos anteriores no funcionan para usted, entonces eliminar Gradle cache parece ser una solución, como lo señaló @Yasitha.
Editar 2
Según lo sugerido por un par de usuarios en los comentarios a continuación, a veces el problema puede resolverse eliminando y reinstalando completamente la aplicación de su dispositivo.
Simplemente escriba la
adb uninstall <package>
terminal para eliminar completamente la aplicación del dispositivo.Editar 3
Como se menciona en la Respuesta de Abhishek , también se debe intentar eliminar la aplicación de su dispositivo en caso de que haya varios usuarios configurados en su dispositivo.
Simplemente ve a
Mobile Settings > Apps > [Your App] > More > Uninstall App for All Users
ACTUALIZACIÓN para Android Studio 2.1 y superior
Al ejecutar Android Studio 2.1 y versiones posteriores, también puede encontrar este problema cuando tiene la opción de ejecución instantánea habilitada en sus preferencias (está habilitada de forma predeterminada).
Para deshabilitar esta opción, vaya a la
Preferences
opción en elAndroid Studio
menú superior y busque paraInstant Run
que pueda desmarcar la primera casilla de verificación en esa pantalla.De todos modos eso me lo arregló. Originalmente señalado por el usuario @yusufonder. Descubrí que este era el problema ya que la instalación de Gradle todavía funcionaba.
fuente
Puede ser útil para alguien: -
A veces, cuando se prueba en un dispositivo, la aplicación no se desinstala correctamente . Para verificar y arreglar esto:
fuente
adb uninstall {packageName}
resolvió el problema.Me enfrentaría a este problema al desinstalar la aplicación a través del dispositivo (es decir, arrastrar la aplicación a la opción "Desinstalar"). Pero aquí está la forma correcta de desinstalar:
Usa el
./gradlew uninstallAll
comando. Esto evitará elError: Activity class {HomeActivity} does not exist.
error.Actualizar:
Si eres flojo, puedes usar la abreviatura para esta tarea:
./gradlew uA
.O defina alias para las tareas comunes de gradle en su
.bash_profile
, al hacerlo ahorrará tiempo, escribir, y no tendrá que recordar cada comando ni preocuparse por los errores tipográficos. Sugiero hacer esto.fuente
Esto sucede cuando haces lo siguiente
AS cree que todavía tiene la aplicación en su dispositivo.
tl; dr: para resolver esto, simplemente puede desconectar su dispositivo después de desinstalar la aplicación y volver a conectarla.
fuente
La aplicación ya está instalada para otro usuario. Intente desinstalar la misma aplicación para todos los usuarios. Entonces intenta.
O puede intentarlo después de ejecutar el comando adb.
donde PACKAGE_NAME es el nombre completo como com.example.myapp
fuente
adb uninstall com.demo
donde estaba el nombre de mi aplicacióndemo
adb devices
Tuve el mismo problema, y así es como lo solucioné.
Vaya a Gradle> Tareas> Instalar> Desinstalar todos
fuente
uninstallAll
se resolvería? Gracias.Tuve el mismo error después de renombrar / refactorizar. Lo que hice fue agregar el
applicationId
atributo de propiedad a mi archivo build.gradle y establecer su valor en el paquete de la aplicación.En build.gradle :
fuente
Intente cambiar el nombre de la Actividad en su
AndroidManifest.xml
archivo.En este momento dice:
Intente agregar un punto al comienzo del nombre de la Actividad:
O agregando el nombre del paquete al comienzo del nombre de la Actividad:
También puede ser un problema que el nombre de su paquete tenga solo dos componentes separados por puntos (el nombre de su paquete es "com.trackingeng"; un nombre de paquete más estándar sería "com.trackingeng.app")
fuente
Siga los pasos a continuación Vaya a Configuración móvil> Aplicaciones> Su aplicación> Más> Hit Desinstalar aplicación para todos los usuarios.
Motivo: porque tiene varios usuarios en su teléfono y desinstaló esa aplicación solo para uno.
DISFRUTAR:
fuente
Creo que otra razón por la que ocurre este problema es que no se elimina por completo para todos los usuarios del dispositivo.
Vaya a Configuración -> Aplicaciones -> Sus aplicaciones -> Haga clic en los 3 puntos en la parte superior derecha -> Desinstalar para todos los usuarios
Esto funciona para mi. Ocurre especialmente cuando cambias los íconos de la aplicación o juegas con el archivo AndroidManifest.xml.
fuente
Para mí, el problema era que
AndroidStudio
pensaba que la aplicación todavía estaba en el dispositivo.Arreglarlo:
reiniciar el
adb
demonio ; en una terminal o símbolo del sistema, ingrese:intenta iniciar tu aplicación.
Si todavía no funciona, mira esta respuesta .
¡asegúrese
platform-tools
de que el SDK de Android esté agregado a las variables de ruta del sistema !fuente
En mi caso, desinstalé la aplicación del teléfono después de que comenzó el problema, pero el siguiente comando funcionó para mí.
Ejecute el siguiente comando en terminal / cmd
nombre_paquete algo así como com.example.applicationname Luego, intente reinstalar la aplicación. Deberia de funcionar.
fuente
para mí, en Android 6 cuando desinstalé la aplicación, en realidad fue desactivada en lugar de ser eliminada del dispositivo.
Configuración> Aplicaciones> haga clic en su aplicación y desinstale
Esto me lo arregló
fuente
El siguiente comando funcionó para mí. En algún momento, la desinstalación parcial de la aplicación también causa esto.
Ejecute el siguiente comando en terminal / cmd
Luego, intente reinstalar la aplicación. Deberia de funcionar.
fuente
Tenga en cuenta que si tiene varios perfiles configurados en el dispositivo, es posible que su aplicación ya exista en uno de los otros perfiles.
Desinstalar la aplicación de todos los Perfiles resolvió el problema por mí.
fuente
Para mí fue un problema muy específico, tengo un Lg g5 para probar mi aplicación y para restablecer los datos de mis aplicaciones lo desinstalé en el teléfono, pero el teléfono tiene una función "agradable" para no desinstalar aplicaciones inmediatamente para que pueda reinstalarlos dentro de un día. Por lo tanto, la aplicación se instaló pero no se pudo usar ( deshabilitar ) después de eliminar completamente la aplicación del teléfono.
fuente
En mi caso, fue porque la aplicación que estaba intentando iniciar se instaló para un usuario diferente en el dispositivo. Vaya a Configuración -> Aplicaciones (Todas las aplicaciones) y seleccione la aplicación. Haga clic en el menú de desbordamiento y seleccione "Desinstalar para todos los usuarios". Esto deberia resolver el problema.
fuente
Yo uso Android Studio 3.2 Beta 5, ante el mismo problema
Ir
Problema resuelto para mi
fuente
Cuando tengo este problema, siempre intento esta solución y funciona.
Pero encontré una excepción esta vez. Esta solución no me funciona. Entonces descubro que el problema es el emulador de efectivo. Simplemente lo hago
Wipe data
yCold boot now
el problema está resuelto.fuente
En caso de que alguien se encuentre con mi problema y no tenga suerte con las otras soluciones ... Intenté iniciar una actividad a través de adb para FireTV mientras depuraba la integración del iniciador de Amazon. Sin embargo, mi proyecto tenía 60 variantes de compilación diferentes (multiplataforma, proyecto de aplicación múltiple) y el ApplicationId no coincidía con ningún classpath ya que el paquete de tiempo de ejecución (y classpaths) eran diferentes del applicationId.
Estaba tratando de correr
adb shell am start -n com.myappid.example.packageone.packagetwo/com.myappid.example.packageone.packagetwo.MySplashActivity
(Por supuesto que había intentado muchas combinaciones con
com.runtimepath.example
ya que tenía el desafío adicional de un ID de aplicación diferente en mi build.gradle y otro en tiempo de ejecución)Lo que finalmente ayudó fue esta publicación https://stackoverflow.com/a/36255727/5970652
¡Que reveló un formato diferente!
com.myappid.example/com.runtimepath.example.packageone.packagetwo.MySplashActivity
Por lo tanto, si tiene una ruta de clase de tiempo de ejecución diferente, intente especificar con build.gradle applicationId antes de la barra diagonal y la ruta de clase de tiempo de ejecución después.
También puede obtener estos valores de
BuildConfig.APPLICATION_ID
ythis.getLocalClassName()
respectivamente si desea registrarlos en logcat.fuente
Incluso tuve el mismo problema, pero ninguna de las soluciones anteriores funcionó para mí. El problema era que había congelado la aplicación particular que estaba tratando de ejecutar a través de Titanium Backup debido a que recibí el error anterior. Probé tanto en Eclipse como en Android Studio.
Después de la realización, simplemente desinstalé la aplicación y luego la volví a ejecutar.
Problema resuelto :-)
fuente
Me gustaría compartir el truco que ayudó en mi caso. Desinstalé la aplicación del dispositivo y nada de las operaciones de reinicio de limpieza / reconstrucción / Android Studio no ayudó.
Dado que Android Studio cree que la aplicación todavía está instalada en el dispositivo y no la implementa, puede forzar la instalación mediante ADB:
donde
-r
significa reinstalar la aplicación, manteniendo sus datos.fuente
Tengo un Samsung Galaxy. Buscar en la configuración anterior no funcionó porque no apareció en absoluto en la configuración de mis aplicaciones.
Encontré la aplicación en mi teléfono escribiendo el nombre de la aplicación en el campo de búsqueda. Me di cuenta de que estaba en el perfil "Trabajo" (usando Mobile @ Work) y lo eliminé. Puede encontrar la configuración para el perfil yendo a Configuración-> Perfil de trabajo-> Aplicaciones
Espero que esto ayude a alguien que no lo encuentre de la misma manera que muchas de las otras respuestas declararon que se puede encontrar en la configuración.
fuente
Enfrenté este problema en Android Studio 3.5.1. Me tomó un día resolver este problema, probé todo, incluyendo limpiar el caché, reiniciar y renombrar el nombre del paquete. Entonces, si alguno de los anteriores no funcionó, intente esto.
Simplemente vaya a gradle> Tareas> Instalar> Desinstalar todo
Aquí está el enlace: Tipo de error 3: la clase de actividad {...} no existe
fuente
Algunas veces la aplicación se instala en el usuario Invitado en su dispositivo móvil, así que intente cambiar Invitado y desinstalar la aplicación.
Además, intente ejecutar el siguiente comando para desinstalar el paquete de desinstalación de aplicaciones adb "Su nombre de paquete"
fuente
También enfrenté el mismo problema en algún lugar del pasado. Tales problemas realmente ocurren cuando realizamos algunas refactorizaciones como: renombrar, mover archivos dentro del proyecto, etc. Cambiar el nombre y mover archivos requieren cambios en el archivo gradle, así que cada vez que cambie el nombre o mueva algún archivo simplemente limpie el proyecto:
La limpieza del proyecto solo elimina los archivos .class y vuelve a compilar el proyecto. Básicamente, obliga a un proyecto de reconstrucción.
A veces, estos tipos de errores no se limpiaron en el proyecto de limpieza, luego intente desinstalar la aplicación del dispositivo (ya sea emulador o físico) y vuelva a ejecutar la aplicación. Espero que esto te ayude, me ayuda un 50%.
Nota: - Cuando tenga algún error, simplemente no vaya a google, limpie el proyecto si esto no funciona, haga lo que quiera googlear.
fuente
Tuve el mismo problema y lo resolví refactorizando mi iniciador de actividad, solo cambie el nombre de la clase y funciona.
fuente
Me enfrento al problema similar, siga los pasos a continuación.
Te ayudará:
1- Limpia tu proyecto
2- Elimina tu directorio de compilación
3- Reinicia tu Android Studio
4- Reconstruye el proyecto
5- se ejecutará con éxito.
Gracias
fuente
Tengo LG Stylus y en mi teléfono de prueba, la aplicación no se elimina de forma permanente. En Configuración -> Aplicación, encontré la aplicación de depuración (que trato de instalar y depurar por AS) con desactivación de anotaciones. Cuando elimino la aplicación de mi teléfono, el error desaparece.
fuente
En mi caso había una razón siguiente:
Tengo 2 usuarios: yo y Guest. y la aplicación se instaló en ambos, pero se eliminó solo al principio.
cuando cambié a la pantalla de Invitado y eliminé la aplicación desde allí, la aplicación se instaló bien.
Espero que esto ayude a alguien :)
fuente