Aplicación con 2 actividades de lanzamiento

Tengo una aplicación que contiene dos Actividades con

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

En el manifiesto. Hice esto para que haya 2 entradas separadas en el cajón de la aplicación. Funciona correctamente con respecto al cajón de la aplicación como es.

Mi pregunta aparece durante la instalación. Después de instalar una aplicación con sólo una actividad MAIN / LAUNCHER, la última página tiene un botón abierto que iniciará la aplicación que acaba de instalar. Con mi aplicación este botón abierto está en gris. Supongo que es porque no sabe cuál de las dos actividades me gustaría lanzar si se pulsaba el botón abierto. ¿Hay algo que pueda establecer en el manifiesto (o en otro lugar) para especificar qué actividad me gustaría abrir el botón para abrir al final del proceso de instalación? Estoy pensando que debe haber algo que puedo establecer, porque cuando instalo la aplicación a través de adb con eclipse se inicia una de las dos actividades y por suerte es en realidad el que me gustaría lanzar.

Esta pregunta:

Después de descargar una aplicación con dos componentes de Launcher del Marketplace, al hacer clic en "Abrir" se producirá un bloqueo

Me ayudó a hacerlo funcionar como yo quería. La clave era añadir:

  <activity-alias android:name="com.android.internal.app.ResolverActivity" android:targetActivity=".Main" android:exported="true"> </activity-alias> 

Al manifiesto y cambiando ".Main" para hacer referencia a la actividad que desea iniciar con el botón de abrir al final de la instalación.

Tenga en cuenta que la etiqueta de alias de actividad debe declararse después de la etiqueta de actividad a la que se está refiriendo (en el xml).

Se recomienda encarecidamente por los documentos Android que si va a tener varias actividades de inicio desde la pantalla de inicio, que cada uno se lanzó dentro de su propia tarea. Echa un vistazo a este artículo para obtener más información.

Al hacerlo, cada tarea tendrá un valor de taskAffinity separado. Creo que la tarea que se establece en la misma afinidad que el paquete de la aplicación es la que será recogido por el instalador como el que se inicia.

Te sugiero que tengas una actividad que lea las preferencias y decidas continuar con la actividad actual o abrir otra actividad.

Si no desea iniciar una nueva actividad, intente inflar el fragmento apropiado.

  • No se puede resolver el símbolo ACCESS_FINE_LOCATION
  • Android: ¿De dónde proviene el permiso "System tools"?
  • Actividad de inicio de la URL
  • ¿Cómo puedo leer mediante programación contraseñas wifi en android
  • ¿Es necesario versionCode / versionName en el manifiesto de la biblioteca?
  • ¿Se puede anidar un servicio en una aplicación?
  • Advertencia sobre <uses-sdk> en Manifest?
  • Valor de lectura de android: esquema programatically
  • ¿Se puede acceder a los valores definidos en MANIFEST.MF mediante programación?
  • Manifiesto del proceso Gradle con la nueva fusión de manifiesto
  • ¿Es mejor práctica de código para registrar un receptor en manifiesto o en código?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.