Cómo iniciar / iniciar la aplicación durante el arranque Android
Me gustaría iniciar mi aplicación cuando empiece mi tableta, de modo que la actividad principal de mi aplicación sea lo primero que vea el usuario al iniciar la tableta.
He leído sobre LauncherActivity pero no entiendo cómo usarlo.
¿Puede alguien ayudarme con sugerencias, enlaces o tutoriales para esto?
¿Es LauncherActivity la mejor manera o hay alternativas?
- Una aplicación instalada, muestra dos entradas en el lanzador
- ¿Cuáles son los usos de main, default y launcher en el archivo de manifiesto en android
- ¿Cómo redirigir usuario a lanzador por defecto en una aplicación android?
- Cómo quitar la aplicación del lanzador (en un dispositivo arraigado) programáticamente
- ¿Cómo puedo crear una aplicación personalizada de reemplazo de pantalla de inicio para Android?
- Cómo iniciar un intento de un ResolveInfo
- Obtener una lista de todos los lanzadores en Android
- ¿Cómo puedo agregar el acceso directo de mi aplicación a la pantalla de inicio al instalar la aplicación?
- Cambiar programaticamente la actividad del lanzador
- Error al iniciar el acceso directo: la aplicación no está instalada en tu teléfono
- Utilizar mi propia aplicación Android / apk como lanzador / reemplazo de pantalla de inicio
- Open android own launcher de mi aplicación
- Actividad de pin de Android en el arranque
Esta línea de código puede ser útil para usted …
Paso 1: establezca el permiso en AndroidManifest.xml
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Paso 2: Añada esto es el filtro intención en el receptor,
<receiver android:name=".BootReciever"> <intent-filter > <action android:name="android.intent.action.BOOT_COMPLETED"/> </intent-filter> </receiver>
Paso 3: Ahora puede iniciar la primera actividad de su aplicación desde el método onReceive de la clase Receiver.
public class BootReciever extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Intent myIntent = new Intent(context, Tabs.class); myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(myIntent); } }
Si desea iniciar la aplicación cuando se inicia la tableta, debe escuchar la acción BOOT_COMPLETED y reaccionar ante ella. BOOT_COMPLETED es una acción de difusión que se emite una vez, una vez que el sistema ha terminado de arrancar. Puede escuchar esta acción creando un BroadcastReceiver que inicia la actividad de lanzamiento cuando recibe una intención con la acción BOOT_COMPLETED.
Agregue este permiso a su manifiesto:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Cree un BroadcastReceiver personalizado en su proyecto:
public class MyBroadCastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){ Intent i = new Intent(context, MyActivity.class); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } } }
A continuación, modifique su archivo de manifiesto añadiendo BroadCastReceiver al manifiesto:
<receiver android:name=".MyBroadcastReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>
Respuesta de @vishesh chandra es correcta. Pero en algunos dispositivos no funciona porque la aplicación se instaló en el almacenamiento externo de forma predeterminada. Asegúrese de especificar android: installLocation = "internalOnly", de lo contrario, no recibirá ninguna acción de Boot Complete si la aplicación está instalada en la tarjeta SD. Agregue esto a la etiqueta de la aplicación en el archivo manifest.xml y funcionará.
- Android studio muestra fuentes de la API de compileSdkVersion al depurar en el dispositivo con la API más antigua
- Enviar solicitud sobre datos móviles cuando WIFI está activado (Android L)