¿Hay alguna manera de visualizar la pila de actividades, en algún momento durante la depuración o la ejecución normal?actividades pila
Respuesta
Puede obtener información útil con el administrador de actividades.
ActivityManager manager = (ActivityManager)getApplication().getSystemService(Activity.ACTIVITY_SERVICE);
Esto le mostrará la parte superior, inferior y tamaño de la pila, y la descripción puede ser útil. Tendrá que buscar las tareas en ejecución para encontrar la actividad actual.
RunningTaskInfo task = manager.getRunningTasks(10).get(0);
task.baseActivity();
task.numActivities();
task.topActivity();
task.description();
Tiene un método pkgLst que puede ser útil.
RunningAppProcessInfo app = manager.getRunningAppProcesses().get(0);
app.pkgList();
No es tan útil o sencillo como usted esperaba, pero podría ayudar.
La actividad proporciona el método getCallingActivity() que puede agregar a los registros en Pausa y en Repetición como se sugirió anteriormente.
También hay if (isChild()) getParent();
para actividades incluidas.
No es que yo sepa. Para dentro de su propia aplicación, puede hacer un seguimiento de esto usted mismo empujándose a su propia estructura de datos de pila en onResume()
y saliéndose de esa pila en onPause()
.
No hay una forma directa, creo, pero una forma es poner registros en todas las devoluciones de llamadas lik en create/pause/resume/destroy/etc y ver las llamadas (por ejemplo: Log.d()).
en el emulador o en un teléfono raíces puede utilizar el dumpsys comando shell
adb shell dumpsys activity
que da salida a las tareas existentes. Aquí un pequeño fragmento
Running activities (most recent first):
TaskRecord{407d8a30 #6 A com.actionbarsherlock.sample.demos}
Run #2: HistoryRecord{40792ec8 com.actionbarsherlock.sample.demos/.ActionItems}
Run #1: HistoryRecord{40735008 com.actionbarsherlock.sample.demos/.SampleList}
TaskRecord{406de0b8 #2 A com.android.launcher}
Run #0: HistoryRecord{405802c8 com.android.launcher/com.android.launcher2.Launcher}
incluso se puede ver la intención de que se inició la actividad
TaskRecord{407d8a30 #6 A com.actionbarsherlock.sample.demos}
clearOnBackground=false numActivities=2 rootWasReset=true
affinity=com.actionbarsherlock.sample.demos
intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.actionbarsherlock.sample.demos/.SampleList}
realActivity=com.actionbarsherlock.sample.demos/.SampleList
lastActiveTime=1492068 (inactive for 2s)
* Hist #2: HistoryRecord{40792ec8 com.actionbarsherlock.sample.demos/.ActionItems}
packageName=com.actionbarsherlock.sample.demos processName=com.actionbarsherlock.sample.demos
launchedFromUid=10040 app=ProcessRecord{40650b68 1840:com.actionbarsherlock.sample.demos/10040}
Intent { cmp=com.actionbarsherlock.sample.demos/.ActionItems }
para extraer sólo las tareas, yo uso grep
adb shell dumpsys activity | grep "Running activities" -A 10
Fuente: http://www.slideshare.net/RanNachmany/manipulating-android-tasks-and-back-stack
- 1. ¿Cómo administrar la pila de actividades?
- 2. Ver pila de actividades en Android
- 3. ¿Cómo se usa Intent.FLAG_ACTIVITY_CLEAR_TOP para borrar la pila de actividades?
- 4. ¿Cómo ver la pila de actividades en la depuración?
- 5. ¿Cómo borro todas las actividades de la pila?
- 6. ¿Puedo forzar el botón Atrás de Android para retroceder dos pasos en la pila de actividades?
- 7. Iniciar la actividad principal si la pila de actividades está vacía
- 8. cómo matar a actividades secundarias y llevar la actividad al principio de la pila
- 9. ¿Cómo encontrar actividades de pila de respaldo en una aplicación de Android?
- 10. Pila de tareas y actividades: ¿cuál es la diferencia entre ambos?
- 11. Actividad iniciada desde la notificación abierta en la parte superior de la pila de actividades
- 12. Cerrar varias actividades de Android simultáneamente
- 13. ¿Borrar todas las actividades en una tarea?
- 14. ¿Cuántas actividades debo usar?
- 15. Memoria y Actividades :: OutOfMemory
- 16. Android - Actividades vs Vistas
- 17. Android: inicie actividades múltiples
- 18. Demasiadas actividades en Android?
- 19. Android PagerView entre actividades
- 20. Admob en actividades múltiples?
- 21. Actividades síncronas y asincrónicas
- 22. ¿Reutilizar actividades anteriores?
- 23. dos actividades de lanzadores
- 24. actividades de conmutación sin animación
- 25. Mismo botón en múltiples actividades
- 26. agregar actividades programáticamente en android
- 27. Compartir un objeto entre actividades
- 28. Problemas de tamaño de la pila de actividad de Android?
- 29. Creación de objetos en la pila/pila?
- 30. ¿Cómo definir una pila de pila?
Sé que es una pregunta antigua, pero me ayudó excepto que necesitaba agregar este permiso a AndroidManifest: –
@MarioLenci GET_TASKS está en desuso en API 21 https://developer.android.com/reference/android/Manifest.permission.html#GET_TASKS –