Acabo de actualizar a Android Studio 0.2.8 y aparece un error que dice "Actividad predeterminada no encontrada" cuando intento editar las configuraciones de ejecución.
Cuando ejecuto Android Studio, aparece este error "Se permite el acceso solo desde el hilo de envío de eventos"
La actividad que estoy usando es una actividad de fragmentos.
Hasta ahora he intentado reconstruir e invalidar cachés / reiniciar. Ambos fueron inútiles.
Por favor, avíseme qué puedo hacer para solucionar el problema.
android
android-studio
android-fragmentactivity
Vipassana Vijayarangan
fuente
fuente
Respuestas:
En Android Studio, haga clic derecho en el proyecto y elija Abrir configuración del módulo . Luego vaya a la pestaña Fuentes en su módulo, busque la carpeta src , haga clic derecho sobre ella y márquela como Fuentes (color azul).
EDITAR: No hay una pestaña de fuentes en las versiones posteriores de Android Studio, pero puedes editar el archivo build.gradle en su lugar: https://stackoverflow.com/a/22028681/1101730 (gracias por el comentario Josh)
fuente
¿Ha agregado un
ACTION_MAIN
filtro de intención a su actividad principal? Si no agrega esto, Android no sabrá qué actividad iniciar como actividad principal.ex:
<intent-filter> <action android:name="android.intent.action.MAIN"/> <action android:name="com.package.name.MyActivity"/> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
fuente
"com.package.name.MyActivity"
podría omitirse si todo el<intent-filter>
elemento está dentro de un<activity>
elemento que corresponde a su MyActivity en su espacio de nombres.Filter
incluye todas las variables nombradasfilter
y aparentemente Android Studio decidió incluirAndroidManifest.xml
y<intent-*filter*>
. Esta respuesta hizo mi doble verificaciónAndroidManifest.xml
y me ayudó a encontrar el error =)Tuve el mismo problema al importar un proyecto a Android Studio, probablemente debido al hecho de que el proyecto se desarrolló en una versión anterior de Android Studio que la que tengo actualmente instalada en mi computadora.
Lo que lo resolvió fue simplemente elegir:
File -> Invalidate Caches / Restart...
y luego seleccionando
Invalidate and Restart
.fuente
Si no tiene la pestaña y comenzó con una actividad vacía, intente esto. A continuación se muestra un ejemplo de código de muestra:
<application android:label="@string/app_name"> <activity android:name=".HelloActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>
Ahora ve a tu archivo AndroidManifest.xml. A continuación, copie el filtro de intención de este código. Mire su archivo de manifiesto realmente bien y pegue el filtro de intención en el lugar exacto en el que se encuentra en el código anterior. (después de la parte .yourActivityName> del manifiesto). Espero que esto haya ayudado.
fuente
Si aún recibe un error que dice "Actividad predeterminada no encontrada" cuando intenta editar las configuraciones de ejecución incluso después de ejecutar:
Invalidar caché y reiniciar .
Luego intente eliminar la carpeta Configuración / Preferencias:
/< USER_HOME_DIR >/.AndroidStudioPreview3.2
o en Mac:
/Users/<USER_NAME>/Library/Preferences/.AndroidStudioPreview3.2
fuente
Cuando hice clic en "Abrir configuración del módulo", no había ninguna pestaña de "Fuente" , creo que porque se ha eliminado para las versiones más recientes de Android Studio (estoy en 0.8.14). Entonces tuve que hacer esto en su lugar:
Agregue estas líneas al
build.gradle
archivo dentro delandroid { ... }
bloque:android { ... sourceSets { main.java.srcDirs += 'src/main/<YOUR DIRECTORY>' } }
Después de editar el archivo, haga clic en Herramientas> Android> Sincronizar proyecto con archivos Gradle .
Crédito a esta respuesta y este comentario .
fuente
Seguir hizo el truco para mí. Desde Ejecutar -> Editar configuración .
fuente
Mi problema se redujo a un error adicional que aparecía a veces, indicando
Manifest Merger failed with multiple errors in Android Studio
Lo que en última instancia estaba causando mi problema era el hecho de que había varios manifiestos (un manifiesto de depuración y un manifiesto en el nuevo módulo que acababa de importar), y no se fusionaban correctamente debido a esto. Después de ver esta respuesta , pude analizar el manifiesto combinado y encontrar la causa del problema y solucionarlo.
fuente
esto me pasó porque escribí con mayúscula los caminos en el manifiesto. cambiado:
<intent-filter> <action android:name="ANDROID.INTENT.ACTION.MAIN"/> <category android:name="ANDROID.INTENT.CATEGORY.LAUNCHER"/> </intent-filter>
a
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter>
y fue arreglado
fuente
Hoy me encontré con el mismo problema y estaba revisando las respuestas aquí.
Para mí, la diferencia fue que ayer funcionó bien, así que pensé que realmente no podía ser un problema de configuración, ni la configuración ni la versión de Android Studio cambiaron.
Afortunadamente, intenté reiniciar Android Studio antes de intentar cualquiera de las otras respuestas, y afortunadamente eso resolvió el problema.
Entonces, para todas las personas que se encuentran con esto: lo primero que debe intentar es reiniciar Android Studio y solo si eso no resuelve el problema, pruebe las otras respuestas aquí.
fuente
Acabo de experimentar el mismo error en Android Studio 1.5.1. y acaba de encontrar la fuente del problema. No estoy seguro de si la causa fue un error humano o algún error extraño en el comportamiento del IDE, pero ninguna de las preguntas de StackOverflow existentes sobre este tema parecía mostrar algo sobre esto, así que pensé que lo publicaría como una respuesta de todos modos.
Para mí, uno de los miembros de mi equipo o el propio IDE, había cambiado la entrada del manifiesto de actividades del lanzador, lo que hacía que se viera así:
<activity android:name="com.rhaebus.ui.activities.ActivitySplash" android:launchMode="singleInstance" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <id android:name="android.intent.id.LAUNCHER" /> </intent-filter> </activity>
Si bien debería, de hecho, verse así:
<activity android:name="com.rhaebus.ui.activities.ActivitySplash" android:launchMode="singleInstance" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <!-- Change Here --> </intent-filter> </activity>
Por lo tanto, verifique dos, tres y cuatro veces el formato de su actividad de iniciador en el manifiesto y es posible que pueda ahorrarse algo de tiempo.
Espero que esto ayude.
EDITAR: Sugiero encarecidamente a las personas que no sigan las respuestas que sugieren seleccionar manualmente una actividad de iniciador dentro de las opciones de configuración de su módulo, ya que esto provocó que la aplicación ya no se mostrara en la lista de aplicaciones instaladas tanto en el Samsung Galaxy S5 Neo y el Samsung Galaxy S6 (al menos para mí).
fuente
Presione aplicación -> Editar configuraciones
Después de ese cambio de valor en Iniciar en "Nada"
fuente
Asegúrese de que en el manifiesto el nombre del paquete sea el mismo que su actividad principal
fuente
En Android Studio, cambie a la perspectiva del proyecto (no a la perspectiva de Android).
Asegúrese de que su proyecto siga la estructura predeterminada del complemento de gradle (es decir, project_dir / app / src / main / java ... )
Elimine todas las carpetas y subcarpetas de compilación que vea.
En la barra de herramientas, haga clic en Construir -> Limpiar proyecto , luego en Construir -> Reconstruir proyecto .
Intente ejecutar el proyecto.
fuente
Puede hacer que Android Studio no se queje yendo al menú "Editar configuraciones" (toque "Shift" tres veces, escriba "Editar configuraciones"), luego cambie Opciones de inicio> Iniciar a "Nada".
Probablemente agregaré una actividad genérica que contenga instrucciones, solo para evitar confusiones.
fuente
En mi caso, funcionó cuando eliminé la carpeta .idea del proyecto (Proyecto / .ida) y volví a abrir Android Studio.
fuente
Esto solucionó el error en mi caso.
fuente
Si cambió el nombre de los directorios (estructura de clases), por ejemplo, com.dir.sample a com.dir.sample1, después de eso, no olvide cambiar el paquete com.dir.sample a com.dir.sample1.
fuente
Modifique "Workspace.xml" (presione Ctrl + Shft + R para buscarlo)
Modificar el nombre de la actividad con el nombre del paquete
Asegúrese de cambiar "name =" USE_COMMAND_LINE "a value =" false "
Recargar el proyecto
¡Hecho!
fuente
Para aquellos como yo que tenían dificultades para encontrar la "pestaña Fuentes":
Aquí tienes que marcar tu carpeta "src" en azul (primero haz clic en Marcar como: Fuente , luego en tu carpeta src ), y listo.
fuente
Hay dos pasos que puede seguir:
fuente
Probé todas las soluciones, pero no funcionó en absoluto. de lo que he intentado deshabilitar la ejecución instantánea en mi estudio de Android.
Vaya a Configuración o Preferencias de Android Studio (para MAC) -> Compilación, Ejecución, Implementación -> Ejecución instantánea .
desmarque la funcionalidad de ejecución instantánea y luego haga clic en sincronizar proyecto con archivos gradle desde el menú de archivo
ahora ejecuta tu compilación ...
fuente
En algún caso, puede tener un modelo con algún
category
campo, si lo refactoriza en todos los lugares, puede refactorizarlo en el archivo de manifiesto y luego la etiqueta xml dejará de ser válida.fuente
Se pueden suceder muchas posibilidades para este tipo de caso (Actividad predeterminada no encontrada) Si todo el código está bien, especialmente en Manifest, solo necesita Invalidar Cache y reiniciar el estudio.
Pero en algún momento sucede cuando tiene una declaración de actividad duplicada en el manifiesto, no solo para la actividad principal, sino que también se desencadena por actividades secundarias.
Eso sucedió conmigo, la actividad predeterminada no se encontró porque tengo actividades secundarias duplicadas en el manifiesto, después de eliminar eso, todo está bien
fuente
Compruebe si hay alguna etiqueta duplicada en su
AndroidManifest.xml
archivo.fuente
Me lo imaginé. Agregué por error la palabra clave final en la declaración de actividad. Una vez que lo eliminé, ¡todo funciona!
public class SplashActivity extends AppCompatActivity { ... }
fuente
En Android Studio
Vaya a editar Configuración.
Seleccione la aplicación.
elija la ruta de la actividad del almuerzo.
aplicar, OK.
¡¡Gracias!!
fuente
El nombre de la actividad predeterminado cambió (como SplashActivity -> SplashActivity1) y funciona para mí
fuente