Interface for tests to use when they need to be informed of the application lifecycle state.
Retrieve instances of the monitor thru ApplicationLifecycleMonitorRegistry.
Detecting these lifecycle states requires support from Instrumentation, therefore do not
expect an instance to be present under any arbitrary instrumentation.
Adds a new callback that will be notified when lifecycle changes occur.
Implementors will not hold a strong ref to the callback, the code which registers callbacks
is responsible for this. Code which registers callbacks should responsibly remove their
callback when it is no longer needed.
Callbacks may be executed on the main thread of the application, and should take care not to
block or otherwise perform expensive operations as it will directly impact the application.
Parameters
callback
ApplicationLifecycleCallback: an ApplicationLifecycleCallback
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[],null,["# ApplicationLifecycleMonitor\n===========================\n\n| This package is part of the Android [support library](/topic/libraries/support-library) which is no longer maintained. The support library has been superseded by [AndroidX](/jetpack/androidx) which is part of [Jetpack](/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider [migrating](/jetpack/androidx/migrate) existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library [class\n| mappings](/jetpack/androidx/migrate/class-mappings).\n\n\n`\npublic\n\n\ninterface\nApplicationLifecycleMonitor\n`\n\n\n`\n\n\n`\n\n|-------------------------------------------------------------------|\n| android.support.test.runner.lifecycle.ApplicationLifecycleMonitor |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nInterface for tests to use when they need to be informed of the application lifecycle state.\n\nRetrieve instances of the monitor thru ApplicationLifecycleMonitorRegistry.\n\nDetecting these lifecycle states requires support from Instrumentation, therefore do not\nexpect an instance to be present under any arbitrary instrumentation.\n\nSummary\n-------\n\n| ### Public methods ||\n|------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` abstract void` | ` `[addLifecycleCallback](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor#addLifecycleCallback(android.support.test.runner.lifecycle.ApplicationLifecycleCallback))`(`[ApplicationLifecycleCallback](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback)` callback) ` Adds a new callback that will be notified when lifecycle changes occur. |\n| ` abstract void` | ` `[removeLifecycleCallback](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor#removeLifecycleCallback(android.support.test.runner.lifecycle.ApplicationLifecycleCallback))`(`[ApplicationLifecycleCallback](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback)` callback) ` Removes a previously registered lifecycle callback. |\n\nPublic methods\n--------------\n\n### addLifecycleCallback\n\n```\nvoid addLifecycleCallback (ApplicationLifecycleCallback callback)\n```\n\nAdds a new callback that will be notified when lifecycle changes occur.\n\nImplementors will not hold a strong ref to the callback, the code which registers callbacks\nis responsible for this. Code which registers callbacks should responsibly remove their\ncallback when it is no longer needed.\n\nCallbacks may be executed on the main thread of the application, and should take care not to\nblock or otherwise perform expensive operations as it will directly impact the application.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|------------|------------------------------------------------------------------------|\n| `callback` | `ApplicationLifecycleCallback`: an ApplicationLifecycleCallback \u003cbr /\u003e |\n\n### removeLifecycleCallback\n\n```\nvoid removeLifecycleCallback (ApplicationLifecycleCallback callback)\n```\n\nRemoves a previously registered lifecycle callback.\n\n\u003cbr /\u003e\n\n| Parameters ||\n|------------|---------------------------------------|\n| `callback` | `ApplicationLifecycleCallback` \u003cbr /\u003e |\n\n-\n\n Interfaces\n ----------\n\n - [ActivityLifecycleCallback](/reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback)\n - [ActivityLifecycleMonitor](/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor)\n - [ApplicationLifecycleCallback](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback)\n - [ApplicationLifecycleMonitor](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor)\n-\n\n Classes\n -------\n\n - [ActivityLifecycleMonitorRegistry](/reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry)\n - [ApplicationLifecycleMonitorRegistry](/reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry)\n-\n\n Enums\n -----\n\n - [ApplicationStage](/reference/android/support/test/runner/lifecycle/ApplicationStage)\n - [Stage](/reference/android/support/test/runner/lifecycle/Stage)"]]