2012-05-28 19 views
5

Mi aplicación tiene esta actividad:¿El nombre de la actividad principal debe ser .MainActivity?

<activity 
    android:name=".main.MainActivity" 
    ... 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 

y se pone en marcha sin ningún problema desde el lanzador casa. Sin embargo, cuando intento lanzarlo desde la Búsqueda de gestos de Google, aparece un mensaje de error de Gesto que dice que la aplicación no tiene .MainActivity.

https://play.google.com/store/apps/details?id=com.google.android.apps.gesturesearch

No aplicaciones de Android deben tener la actividad principal llamado .MainActivity? Si no, ¿es una recomendación suave o una convención o simplemente una mala suposición por parte de Gesture?

Respuesta

6

Las aplicaciones de Android no requieren ninguna actividad llamada .MainActivity. Además, no conozco ninguna convención como esta. Parece que, sin saberlo, le estás diciendo a Gesture que quieres algo llamado .MainActivity.

Quizás es porque pones un nombre de paquete antes del nombre real de la clase. Trate de poner el nombre de clase completamente calificado en su lugar. También trate de cambiar el nombre de la Actividad y vea si obtiene resultados diferentes.

3

Las aplicaciones de Android no requieren una actividad llamada MainActivity y no debe suponer (y no debe depender) en ninguna aplicación que implemente una.

Además, nunca he oído hablar de ninguna convención que lo recomiende. La mayoría de los desarrolladores nombrarán cada actividad para adaptarla a su comportamiento y/o propósito en la aplicación.

0

No, esto no es obligatorio, no uso este nombre nunca para mis proyectos. Puede dar el nombre según corresponda al comportamiento de su aplicación.

0

Puede ser un problema es con su nombre de actividad mencionado en el archivo de manifiesto.

androide: parentActivityName = "activity.MainActivity"

Si está utilizando el botón Fragmento y actionbar entonces hay que mencionar el nombre de la actividad de los padres correctamente, En mi caso es MainActivity. Si no se le da correctamente, se mostrará el error.

Cuestiones relacionadas