2011-10-03 6 views
7

Estoy tratando de probar cómo mi aplicación se encarga de ser destruida por el Android ActivityManager (y luego reiniciada por eventos de alarma). En otras palabras, quiero forzar el mensaje:
Inducir ActivityManager a "Ya no quiero" para la prueba

I/ActivityManager( 333): No longer want com.myname.myapp (pid 4444): hidden #22 

¿Hay alguna manera de forma fiable inducir la ActivityManager a "Ya no quiero" mi solicitud?


Algunos trucos que conozco para poner fin a los procesos (sin embargo, el propósito de esta pregunta es encontrar algo para inducir el método de "Ya no quiero" ActivityManager).

  • Usando Administrar aplicaciones, toque el botón "Forzar detención".
    El problema con esto es que no siempre parece comportarse del mismo modo que el método ActivityManager "Ya no desea".
  • Ejecuta muchas aplicaciones de acaparamiento de memoria.
    El problema con esto es que no es confiable y consume mucho tiempo. A veces puedo ejecutar muchas aplicaciones y no veo un pío de ActivityManager.
  • OS API killBackgroundProcesses().
    El problema con esto es que no estaba claro si llamar killBackgroundProcesses() explícitamente se comportaría exactamente el mismo que el método ActivityManager "Ya no desea".

Respuesta

0

En la versión más reciente de Android, existe la opción de "No guardar actividades". Después de seleccionar que cada actividad se destruye tan pronto como el usuario abandone la Actividad. Por ejemplo, tenemos la actividad A y B. flujo normal

  • Actividad A inicia la actividad B

Después de seleccionar No mantener actividades

  • Actividad Una actividad de inicio B
  • B -> onCreate, A -> onDestroy (nota que A no llama finalizar después de iniciar la actividad B)
  • Al presionar el botón Atrás se regresa a la Actividad A
Cuestiones relacionadas