Estoy escribiendo un programa simple de Android, y no obtengo estos errores, no sé cuáles son. Mi programa es correcto, pero no muestra salida. Creo que es por estas dos líneas:
[2005-01-06 19:56:38 - my_Android] No Launcher activity found!
[2005-01-06 19:56:38 - my_Android] The launch will only sync the application package on the device!
android:name="ExampleActivity"
a la clase principal de actividad adecuada.Varias etiquetas de acción en una sola etiqueta de filtro de intención también causarán el mismo error.
fuente
Como dijo Gusdor anteriormente, "Varias etiquetas de acción en una sola etiqueta de filtro de intención también causarán el mismo error". (¡Dale el crédito! ¡Podría besar a Gusdor por esto!)
¡No encontré ningún documento para este hecho! Había agregado una nueva acción (USB) y, siendo inteligente, la agrupé en el mismo filtro de intención. Y rompió el lanzamiento. Como dijo Gusdor, ¡un filtro de intención, una acción! Aparentemente, cada acción debe ir en su propio filtro de intención.
Debe tener un aspecto como este...
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter> <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" /> </intent-filter>
Cuando hice esto, ¡WAZOO! ¡funcionó!
fuente
¿Tiene una actividad configurada que sea la actividad iniciada cuando se inicie la aplicación?
Esto se hace en su archivo Manifest.xml, algo como:
<activity android:name=".Main" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
fuente
Verifique su manifest.xml. Asegúrate de tener la categoría LANZADOR allí.
<activity android:name=".myActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
fuente
Significa que no especificó una Actividad para que Android se inicie como predeterminada cuando la aplicación se abre desde el iniciador. Debe agregar un filtro de intención en el manifiesto para la actividad que desea que actúe como predeterminado cuando se inicie la aplicación.
Lea http://developer.android.com/guide/topics/intents/intents-filters.html#ccases para obtener más detalles.
fuente
Solucioné el problema agregando un bloque de actividad en la etiqueta de la aplicación. Creé el proyecto usando el asistente, no sé por qué mi archivo AdroidManifest.xml no contenía un bloque de aplicación. Agregué el bloque de la aplicación:
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".ToDoListActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
Y obtengo la salida deseada en el emulador.
fuente
Como se ha señalado, este error probablemente se deba a que falta o es incorrecto
intent-filter
.Solo me gustaría agregar que este error también aparece si configura
android:exported="false"
su actividad de iniciador (en el manifiesto).fuente
Tuve el mismo problema y resultó que tenía un '\' en lugar de un '/' en la etiqueta xml. Todavía dio el mismo error pero solo debido a un problema de sintaxis.
fuente
Si está utilizando el IDE de eclipse estándar proporcionado por Google para el desarrollo de Android, puede marcar la casilla de verificación "Actividad del lanzador" mientras crea una nueva actividad. Por favor encuentre abajo:
fuente
En Eclipse cuando puedo hacer esto:
Pero es preferible realizar los cambios correspondientes dentro del archivo de manifiesto de Android.
fuente
simplemente agregue esto a su etiqueta de aplicación en el archivo AndroidManifest.xml
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
y también edite la etiqueta uses-sdk de android: targetSdkVersion = "16" a 17
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" />
fuente
No pudo especificar los elementos del filtro de intención en su archivo de manifiesto. El archivo de manifiesto es:
<application android:label="@string/app_name" android:icon="@drawable/icon"> <activity android:name="Your Activity Name" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
Agregue y verifique esto correctamente. Espero que esto ayude ...
fuente
El manifiesto distingue entre mayúsculas y minúsculas, así que compare estas líneas para detectar cualquier discrepancia entre mayúsculas y minúsculas, especialmente la palabra
MAIN
en:<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
fuente
Puede agregar un lanzador a la actividad en el editor visual de manifiesto de eclipse:
fuente
MAIN decidirá la primera actividad que se utilizará cuando se inicie la aplicación. El lanzador agregará una aplicación en el panel de la aplicación.
Si ya los tiene y todavía recibe el mensaje de error, pero tal vez sea porque podría estar usando más que más categorías o acciones en un filtro de intención. En un filtro de intención, solo puede haber una de esas etiquetas. Para agregar otra categoría, colóquela en otro filtro de intención, como el siguiente
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <!-- TODO - Add necessary intent filter information so that this Activity will accept Intents with the action "android.intent.action.VIEW" and with an "http" schemed URL --> <intent-filter> <action android:name="android.intent.action.VIEW" /> <data android:scheme="http" /> <category android:name="android.intent.category.BROWSABLE" /> </intent-filter>
fuente
No ha incluido el filtro de intención del lanzador en la actividad que desea que aparezca primero, por lo que no sabe qué actividad iniciar cuando se inicia la aplicación, para esto, dígale al sistema incluyendo la intención del filtro del lanzador en manifest.xml
fuente