Aquí está el panorama:formas de llevar una aplicación para Android en segundo plano a plano
AndroidManifest.xml define una única actividad con android:launchMode="singleTask"
. (Esto significa que debe haber una sola actividad en la pila durante todo el ciclo de vida de la aplicación, ¿no?)
Durante Activity.onCreate()
, un receptor de difusión se crea mediante programación y escucha SMS entrantes. El receptor permanece activo incluso después de Activity.onPause()
por diseño.
Cuando el usuario finaliza la aplicación, presiona el botón de inicio del dispositivo que llama al Activity.onPause()
y la aplicación desaparece. El dispositivo muestra luego la pantalla de inicio de Android.
Tras la recepción de SMS, los receptores de radiodifusión recibe SMS y trata de mostrar la actividad a través de:
Intent it = new Intent(context, Akami.class);
it.setAction(Intent.ACTION_MAIN);
it.addCategory(Intent.CATEGORY_LAUNCHER);
it.setComponent(new ComponentName(context.getPackageName(), "MyActivity"));
it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(it);
Sin embargo, la actividad no se presentaron para el usuario.
- a) ¿Por qué?
- b) ¿Cuáles son las formas posibles de llevar una actividad a primer plano?
No está claro cuál es el problema. ¿La actividad no está en primer plano? Hay un choque? –
@tencent: edité mi publicación. Sí, la actividad NO está llegando al primer plano. Sin accidente. –