blob: 9b241d99e26161b9bb495439a2156ca26f94a900 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width" />
<link rel="shortcut icon" type="image/x-icon" href="../../../../../../favicon.ico" />
<title>ActivityLifecycleMonitor | Android Developers</title>
<!-- STYLESHEETS -->
<link rel="stylesheet"
href="http://fonts.googleapis.com/css?family=Roboto+Condensed">
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
title="roboto">
<link href="../../../../../../assets/css/default.css?v=5" rel="stylesheet" type="text/css">
<!-- FULLSCREEN STYLESHEET -->
<link href="../../../../../../assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
type="text/css">
<!-- JAVASCRIPT -->
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script src="../../../../../../assets/js/android_3p-bundle.js" type="text/javascript"></script>
<script type="text/javascript">
var toRoot = "../../../../../../";
var metaTags = [];
var devsite = false;
</script>
<script src="../../../../../../assets/js/docs.js?v=3" type="text/javascript"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-5831155-1', 'android.com');
ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'}); // New tracker);
ga('send', 'pageview');
ga('universal.send', 'pageview'); // Send page view for new tracker.
</script>
</head>
<body class="gc-documentation
develop reference" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="" style="display:none"></div>
<a name="top"></a>
<a name="top"></a>
<!-- dialog to prompt lang pref change when loaded from hardcoded URL
<div id="langMessage" style="display:none">
<div>
<div class="lang en">
<p>You requested a page in English, would you like to proceed with this language setting?</p>
</div>
<div class="lang es">
<p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
</div>
<div class="lang ja">
<p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p>
</div>
<div class="lang ko">
<p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p>
</div>
<div class="lang ru">
<p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
</div>
<div class="lang zh-cn">
<p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p>
</div>
<div class="lang zh-tw">
<p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p>
</div>
<a href="#" class="button yes" onclick="return false;">
<span class="lang en">Yes</span>
<span class="lang es">Sí</span>
<span class="lang ja">Yes</span>
<span class="lang ko">Yes</span>
<span class="lang ru">Yes</span>
<span class="lang zh-cn">是的</span>
<span class="lang zh-tw">没有</span>
</a>
<a href="#" class="button" onclick="$('#langMessage').hide();return false;">
<span class="lang en">No</span>
<span class="lang es">No</span>
<span class="lang ja">No</span>
<span class="lang ko">No</span>
<span class="lang ru">No</span>
<span class="lang zh-cn">没有</span>
<span class="lang zh-tw">没有</span>
</a>
</div>
</div> -->
<!-- Header -->
<div id="header-wrapper">
<div id="header">
<div class="wrap" id="header-wrap">
<div class="col-3 logo">
<a href="../../../../../../index.html">
<img src="../../../../../../assets/images/dac_logo.png"
srcset="../../../../../../assets/images/dac_logo@2x.png 2x"
width="123" height="25" alt="Android Developers" />
</a>
<div class="btn-quicknav" id="btn-quicknav">
<a href="#" class="arrow-inactive">Quicknav</a>
<a href="#" class="arrow-active">Quicknav</a>
</div>
</div>
<ul class="nav-x col-9">
<li class="design">
<a href="../../../../../../design/index.html"
zh-tw-lang="設計"
zh-cn-lang="设计"
ru-lang="Проектирование"
ko-lang="디자인"
ja-lang="設計"
es-lang="Diseñar"
>Design</a></li>
<li class="develop"><a href="../../../../../../develop/index.html"
zh-tw-lang="開發"
zh-cn-lang="开发"
ru-lang="Разработка"
ko-lang="개발"
ja-lang="開発"
es-lang="Desarrollar"
>Develop</a></li>
<li class="distribute last"><a href="../../../../../../distribute/index.html"
zh-tw-lang="發佈"
zh-cn-lang="分发"
ru-lang="Распространение"
ko-lang="배포"
ja-lang="配布"
es-lang="Distribuir"
>Distribute</a></li>
</ul>
<div class="menu-container">
<div class="moremenu">
<div id="more-btn"></div>
</div>
<div class="morehover" id="moremenu">
<div class="top"></div>
<div class="mid">
<div class="header">Links</div>
<ul>
<li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
<li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
<li><a href="../../../../../../about/index.html">About Android</a></li>
</ul>
<div class="header">Android Sites</div>
<ul>
<li><a href="http://www.android.com">Android.com</a></li>
<li class="active"><a>Android Developers</a></li>
<li><a href="http://source.android.com">Android Open Source Project</a></li>
</ul>
<br class="clearfix" />
</div><!-- end 'mid' -->
<div class="bottom"></div>
</div><!-- end 'moremenu' -->
<div class="search" id="search-container">
<div class="search-inner">
<div id="search-btn"></div>
<div class="left"></div>
<form onsubmit="return submit_search()">
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
onkeydown="return search_changed(event, true, '../../../../../../')"
onkeyup="return search_changed(event, false, '../../../../../../')" />
</form>
<div class="right"></div>
<a class="close hide">close</a>
<div class="left"></div>
<div class="right"></div>
</div><!-- end search-inner -->
</div><!-- end search-container -->
<div class="search_filtered_wrapper reference">
<div class="suggest-card reference no-display">
<ul class="search_filtered">
</ul>
</div>
</div>
<div class="search_filtered_wrapper docs">
<div class="suggest-card dummy no-display">&nbsp;</div>
<div class="suggest-card develop no-display">
<ul class="search_filtered">
</ul>
<div class="child-card guides no-display">
</div>
<div class="child-card training no-display">
</div>
<div class="child-card samples no-display">
</div>
</div>
<div class="suggest-card design no-display">
<ul class="search_filtered">
</ul>
</div>
<div class="suggest-card distribute no-display">
<ul class="search_filtered">
</ul>
</div>
</div>
</div><!-- end menu-container (search and menu widget) -->
<!-- Expanded quicknav -->
<div id="quicknav" class="col-13">
<ul>
<li class="about">
<ul>
<li><a href="../../../../../../about/index.html">About</a></li>
<li><a href="../../../../../../wear/index.html">Wear</a></li>
<li><a href="../../../../../../tv/index.html">TV</a></li>
<li><a href="../../../../../../auto/index.html">Auto</a></li>
</ul>
</li>
<li class="design">
<ul>
<li><a href="../../../../../../design/index.html">Get Started</a></li>
<li><a href="../../../../../../design/devices.html">Devices</a></li>
<li><a href="../../../../../../design/style/index.html">Style</a></li>
<li><a href="../../../../../../design/patterns/index.html">Patterns</a></li>
<li><a href="../../../../../../design/building-blocks/index.html">Building Blocks</a></li>
<li><a href="../../../../../../design/downloads/index.html">Downloads</a></li>
<li><a href="../../../../../../design/videos/index.html">Videos</a></li>
</ul>
</li>
<li class="develop">
<ul>
<li><a href="../../../../../../training/index.html"
zh-tw-lang="訓練課程"
zh-cn-lang="培训"
ru-lang="Курсы"
ko-lang="교육"
ja-lang="トレーニング"
es-lang="Capacitación"
>Training</a></li>
<li><a href="../../../../../../guide/index.html"
zh-tw-lang="API 指南"
zh-cn-lang="API 指南"
ru-lang="Руководства по API"
ko-lang="API 가이드"
ja-lang="API ガイド"
es-lang="Guías de la API"
>API Guides</a></li>
<li><a href="../../../../../../reference/packages.html"
zh-tw-lang="參考資源"
zh-cn-lang="参考"
ru-lang="Справочник"
ko-lang="참조문서"
ja-lang="リファレンス"
es-lang="Referencia"
>Reference</a></li>
<li><a href="../../../../../../sdk/index.html"
zh-tw-lang="相關工具"
zh-cn-lang="工具"
ru-lang="Инструменты"
ko-lang="도구"
ja-lang="ツール"
es-lang="Herramientas"
>Tools</a>
</li>
<li><a href="../../../../../../google/index.html">Google Services</a>
</li>
</ul>
</li>
<li class="distribute last">
<ul>
<li><a href="../../../../../../distribute/googleplay/index.html">Google Play</a></li>
<li><a href="../../../../../../distribute/essentials/index.html">Essentials</a></li>
<li><a href="../../../../../../distribute/users/index.html">Get Users</a></li>
<li><a href="../../../../../../distribute/engage/index.html">Engage &amp; Retain</a></li>
<li><a href="../../../../../../distribute/monetize/index.html">Monetize</a></li>
<li><a href="../../../../../../distribute/analyze/index.html">Analyze</a></li>
<li><a href="../../../../../../distribute/tools/index.html">Tools &amp; Reference</a></li>
<li><a href="../../../../../../distribute/stories/index.html">Developer Stories</a></li>
</ul>
</li>
</ul>
</div><!-- /Expanded quicknav -->
</div><!-- end header-wrap.wrap -->
</div><!-- end header -->
<!-- Secondary x-nav -->
<div id="nav-x">
<div class="wrap" style="position:relative;z-index:1">
<ul class="nav-x col-9 develop" style="width:100%">
<li class="training"><a href="../../../../../../training/index.html"
zh-tw-lang="訓練課程"
zh-cn-lang="培训"
ru-lang="Курсы"
ko-lang="교육"
ja-lang="トレーニング"
es-lang="Capacitación"
>Training</a></li>
<li class="guide"><a href="../../../../../../guide/index.html"
zh-tw-lang="API 指南"
zh-cn-lang="API 指南"
ru-lang="Руководства по API"
ko-lang="API 가이드"
ja-lang="API ガイド"
es-lang="Guías de la API"
>API Guides</a></li>
<li class="reference"><a href="../../../../../../reference/packages.html"
zh-tw-lang="參考資源"
zh-cn-lang="参考"
ru-lang="Справочник"
ko-lang="참조문서"
ja-lang="リファレンス"
es-lang="Referencia"
>Reference</a></li>
<li class="tools"><a href="../../../../../../sdk/index.html"
zh-tw-lang="相關工具"
zh-cn-lang="工具"
ru-lang="Инструменты"
ko-lang="도구"
ja-lang="ツール"
es-lang="Herramientas"
>Tools</a></li>
<li class="google"><a href="../../../../../../google/index.html"
>Google Services</a>
</li>
</ul>
</div>
</div>
<!-- /Sendondary x-nav DEVELOP -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
</div> <!--end header-wrapper -->
<div id="sticky-header">
<div>
<a class="logo" href="#top"></a>
<a class="top" href="#top"></a>
<ul class="breadcrumb">
<li class="current">ActivityLifecycleMonitor</li>
</ul>
</div>
</div>
<div class="wrap clearfix" id="body-content">
<div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav">
<div id="api-nav-header">
<div id="api-level-toggle">
<label for="apiLevelCheckbox" class="disabled"
title="Select your target API level to dim unavailable APIs">API level: </label>
<div class="select-wrapper">
<select id="apiLevelSelector">
<!-- option elements added by buildApiLevelSelector() -->
</select>
</div>
</div><!-- end toggle -->
<div id="api-nav-title">Android APIs</div>
</div><!-- end nav header -->
<script>
var SINCE_DATA = [ ];
buildApiLevelSelector();
</script>
<div id="swapper">
<div id="nav-panels">
<div id="resize-packages-nav">
<div id="packages-nav" class="scroll-pane">
<ul>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/package-summary.html">android.support.test</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/annotation/package-summary.html">android.support.test.annotation</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/package-summary.html">android.support.test.espresso</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/action/package-summary.html">android.support.test.espresso.action</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/assertion/package-summary.html">android.support.test.espresso.assertion</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/base/package-summary.html">android.support.test.espresso.base</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/contrib/package-summary.html">android.support.test.espresso.contrib</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/intent/package-summary.html">android.support.test.espresso.intent</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/intent/matcher/package-summary.html">android.support.test.espresso.intent.matcher</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/intent/rule/package-summary.html">android.support.test.espresso.intent.rule</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/matcher/package-summary.html">android.support.test.espresso.matcher</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/espresso/util/package-summary.html">android.support.test.espresso.util</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/filters/package-summary.html">android.support.test.filters</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/rule/package-summary.html">android.support.test.rule</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/runner/package-summary.html">android.support.test.runner</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/runner/intent/package-summary.html">android.support.test.runner.intent</a></li>
<li class="selected api apilevel-">
<a href="../../../../../../reference/android/support/test/runner/lifecycle/package-summary.html">android.support.test.runner.lifecycle</a></li>
<li class="api apilevel-">
<a href="../../../../../../reference/android/support/test/uiautomator/package-summary.html">android.support.test.uiautomator</a></li>
</ul><br/>
</div> <!-- end packages-nav -->
</div> <!-- end resize-packages -->
<div id="classes-nav" class="scroll-pane">
<ul>
<li><h2>Interfaces</h2>
<ul>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html">ActivityLifecycleCallback</a></li>
<li class="selected api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html">ActivityLifecycleMonitor</a></li>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ApplicationLifecycleCallback.html">ApplicationLifecycleCallback</a></li>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitor.html">ApplicationLifecycleMonitor</a></li>
</ul>
</li>
<li><h2>Classes</h2>
<ul>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitorRegistry.html">ActivityLifecycleMonitorRegistry</a></li>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ApplicationLifecycleMonitorRegistry.html">ApplicationLifecycleMonitorRegistry</a></li>
</ul>
</li>
<li><h2>Enums</h2>
<ul>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ApplicationStage.html">ApplicationStage</a></li>
<li class="api apilevel-"><a href="../../../../../../reference/android/support/test/runner/lifecycle/Stage.html">Stage</a></li>
</ul>
</li>
</ul><br/>
</div><!-- end classes -->
</div><!-- end nav-panels -->
<div id="nav-tree" style="display:none" class="scroll-pane">
<div id="tree-list"></div>
</div><!-- end nav-tree -->
</div><!-- end swapper -->
<div id="nav-swap">
<a class="fullscreen">fullscreen</a>
<a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
</div>
</div> <!-- end devdoc-nav -->
</div> <!-- end side-nav -->
<script type="text/javascript">
// init fullscreen based on user pref
var fullscreen = readCookie("fullscreen");
if (fullscreen != 0) {
if (fullscreen == "false") {
toggleFullscreen(false);
} else {
toggleFullscreen(true);
}
}
// init nav version for mobile
if (isMobile) {
swapNav(); // tree view should be used on mobile
$('#nav-swap').hide();
} else {
chooseDefaultNav();
if ($("#nav-tree").is(':visible')) {
init_default_navtree("../../../../../../");
}
}
// scroll the selected page into view
$(document).ready(function() {
scrollIntoView("packages-nav");
scrollIntoView("classes-nav");
});
</script>
<div class="col-12" id="doc-col">
<div id="api-info-block">
<div class="sum-details-links">
</div><!-- end sum-details-links -->
<div class="api-level">
</div>
</div><!-- end api-info-block -->
<!-- ======== START OF CLASS DATA ======== -->
<div id="jd-header">
public
interface
<h1 itemprop="name">ActivityLifecycleMonitor</h1>
</div><!-- end header -->
<div id="naMessage"></div>
<div id="jd-content" class="api apilevel-">
<table class="jd-inheritance-table">
<tr>
<td colspan="1" class="jd-inheritance-class-cell">android.support.test.runner.lifecycle.ActivityLifecycleMonitor</td>
</tr>
</table>
<div class="jd-descr">
<h2>Class Overview</h2>
<p itemprop="articleBody">Interface for tests to use when they need to query the activity lifecycle state.
<p>
Activity lifecycle changes occur only on the UI thread - therefore listeners registered with
an ActivityLifecycleMonitor should expect to be invoked on the UI thread. The direct query
methods can only be called on the UI thread because otherwise they would not be able to return
consistent responses.
</p>
<p>
Retrieve instances of the monitor thru ActivityLifecycleMonitorRegistry.
</p>
<p>
Detecting these lifecycle states requires support from Instrumentation, therefore do not expect
an instance to be present under any arbitrary instrumentation.
</p>
</p>
</div><!-- jd-descr -->
<div class="jd-descr">
<h2>Summary</h2>
<!-- ========== METHOD SUMMARY =========== -->
<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
<tr class="alt-color api apilevel-" >
<td class="jd-typecol"><nobr>
abstract
void</nobr>
</td>
<td class="jd-linkcol" width="100%"><nobr>
<span class="sympad"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html#addLifecycleCallback(android.support.test.runner.lifecycle.ActivityLifecycleCallback)">addLifecycleCallback</a></span>(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html">ActivityLifecycleCallback</a> callback)</nobr>
<div class="jd-descrdiv">
Adds a new callback that will be notified when lifecycle changes occur.
</div>
</td></tr>
<tr class=" api apilevel-" >
<td class="jd-typecol"><nobr>
abstract
Collection&lt;Activity&gt;</nobr>
</td>
<td class="jd-linkcol" width="100%"><nobr>
<span class="sympad"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html#getActivitiesInStage(android.support.test.runner.lifecycle.Stage)">getActivitiesInStage</a></span>(<a href="../../../../../../reference/android/support/test/runner/lifecycle/Stage.html">Stage</a> stage)</nobr>
<div class="jd-descrdiv">
Returns all activities in a given stage of their lifecycle.
</div>
</td></tr>
<tr class="alt-color api apilevel-" >
<td class="jd-typecol"><nobr>
abstract
<a href="../../../../../../reference/android/support/test/runner/lifecycle/Stage.html">Stage</a></nobr>
</td>
<td class="jd-linkcol" width="100%"><nobr>
<span class="sympad"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html#getLifecycleStageOf(android.app.Activity)">getLifecycleStageOf</a></span>(Activity activity)</nobr>
<div class="jd-descrdiv">
Returns the current lifecycle stage of a given activity.
</div>
</td></tr>
<tr class=" api apilevel-" >
<td class="jd-typecol"><nobr>
abstract
void</nobr>
</td>
<td class="jd-linkcol" width="100%"><nobr>
<span class="sympad"><a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleMonitor.html#removeLifecycleCallback(android.support.test.runner.lifecycle.ActivityLifecycleCallback)">removeLifecycleCallback</a></span>(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html">ActivityLifecycleCallback</a> callback)</nobr>
<div class="jd-descrdiv">
Removes a previously registered lifecycle callback.
</div>
</td></tr>
</table>
</div><!-- jd-descr (summary) -->
<!-- Details -->
<!-- XML Attributes -->
<!-- Enum Values -->
<!-- Constants -->
<!-- Fields -->
<!-- Public ctors -->
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<!-- Protected ctors -->
<!-- ========= METHOD DETAIL ======== -->
<!-- Public methdos -->
<h2>Public Methods</h2>
<A NAME="addLifecycleCallback(android.support.test.runner.lifecycle.ActivityLifecycleCallback)"></A>
<div class="jd-details api apilevel-">
<h4 class="jd-details-title">
<span class="normal">
public
abstract
void
</span>
<span class="sympad">addLifecycleCallback</span>
<span class="normal">(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html">ActivityLifecycleCallback</a> callback)</span>
</h4>
<div class="api-level">
<div></div>
</div>
<div class="jd-details-descr">
<div class="jd-tagdata jd-tagdescr"><p>Adds a new callback that will be notified when lifecycle changes occur.
<p>
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.
</p>
<p>
Callbacks are 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.
</p></p></div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Parameters</h5>
<table class="jd-tagtable">
<tr>
<th>callback</td>
<td>an ActivityLifecycleCallback
</td>
</tr>
</table>
</div>
</div>
</div>
<A NAME="getActivitiesInStage(android.support.test.runner.lifecycle.Stage)"></A>
<div class="jd-details api apilevel-">
<h4 class="jd-details-title">
<span class="normal">
public
abstract
Collection&lt;Activity&gt;
</span>
<span class="sympad">getActivitiesInStage</span>
<span class="normal">(<a href="../../../../../../reference/android/support/test/runner/lifecycle/Stage.html">Stage</a> stage)</span>
</h4>
<div class="api-level">
<div></div>
</div>
<div class="jd-details-descr">
<div class="jd-tagdata jd-tagdescr"><p>Returns all activities in a given stage of their lifecycle.
<p>
This method can only return a consistant and correct answer from the main thread, therefore
callers should always invoke it from the main thread and implementors are free to throw an
exception if the call is not made on the main thread.
</p>
<p>
Implementors should ensure this method returns a consistant response if called from a
lifecycle callback also registered with this monitor (eg: it would be horriblely wrong if a
callback sees PAUSED and calls this method with the PAUSED and does not see its activity in
the response.
</p>
<p>
Callers should be aware that the monitor implementation may not hold strong references to the
Activities in the application. Therefore stages which are considered end stages or eligible
for garbage collection on low memory situations may not return an instance of a particular
activity if it has been garbage collected.</p></div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Parameters</h5>
<table class="jd-tagtable">
<tr>
<th>stage</td>
<td>the stage to query for.</td>
</tr>
</table>
</div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Returns</h5>
<ul class="nolist"><li>a snapshot Collection of activities in the given stage. This collection may be empty.</li></ul>
</div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Throws</h5>
<table class="jd-tagtable">
<tr>
<th>IllegalStateException</td>
<td>if called from outside the main thread.
</td>
</tr>
</table>
</div>
</div>
</div>
<A NAME="getLifecycleStageOf(android.app.Activity)"></A>
<div class="jd-details api apilevel-">
<h4 class="jd-details-title">
<span class="normal">
public
abstract
<a href="../../../../../../reference/android/support/test/runner/lifecycle/Stage.html">Stage</a>
</span>
<span class="sympad">getLifecycleStageOf</span>
<span class="normal">(Activity activity)</span>
</h4>
<div class="api-level">
<div></div>
</div>
<div class="jd-details-descr">
<div class="jd-tagdata jd-tagdescr"><p>Returns the current lifecycle stage of a given activity.
<p>
This method can only return a consistant and correct answer
from the main thread, therefore callers should always invoke
it from the main thread and implementors are free to throw an
exception if the call is not made on the main thread.
</p>
<p>
Implementors should ensure this method returns a consistant response if called from a
lifecycle callback also registered with this monitor (eg: it would be horriblely wrong if a
callback sees PAUSED and calls this method with the same activity and gets RESUMED.
</p></p></div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Parameters</h5>
<table class="jd-tagtable">
<tr>
<th>activity</td>
<td>an activity in this application.</td>
</tr>
</table>
</div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Returns</h5>
<ul class="nolist"><li>the lifecycle stage this activity is in.</li></ul>
</div>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Throws</h5>
<table class="jd-tagtable">
<tr>
<th>IllegalArgumentException</td>
<td>if activity is unknown to the monitor.</td>
</tr>
<tr>
<th>NullPointerException</td>
<td>if activity is null.</td>
</tr>
<tr>
<th>IllegalStateException</td>
<td>if called off the main thread.
</td>
</tr>
</table>
</div>
</div>
</div>
<A NAME="removeLifecycleCallback(android.support.test.runner.lifecycle.ActivityLifecycleCallback)"></A>
<div class="jd-details api apilevel-">
<h4 class="jd-details-title">
<span class="normal">
public
abstract
void
</span>
<span class="sympad">removeLifecycleCallback</span>
<span class="normal">(<a href="../../../../../../reference/android/support/test/runner/lifecycle/ActivityLifecycleCallback.html">ActivityLifecycleCallback</a> callback)</span>
</h4>
<div class="api-level">
<div></div>
</div>
<div class="jd-details-descr">
<div class="jd-tagdata jd-tagdescr"><p>Removes a previously registered lifecycle callback.
</p></div>
</div>
</div>
<!-- ========= METHOD DETAIL ======== -->
<!-- ========= END OF CLASS DATA ========= -->
<A NAME="navbar_top"></A>
<div id="footer" class="wrap" >
<div id="copyright">
Except as noted, this content is licensed under <a
href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
For details and restrictions, see the <a href="../../../../../../license.html">
Content License</a>.
</div>
<div id="build_info">
Android &nbsp;r &mdash;
<script src="../../../../../../timestamp.js" type="text/javascript"></script>
<script>document.write(BUILD_TIMESTAMP)</script>
</div>
<div id="footerlinks">
<p>
<a href="../../../../../../about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
<a href="../../../../../../legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
<a href="../../../../../../support.html">Support</a>
</p>
</div>
</div> <!-- end footer -->
</div> <!-- jd-content -->
</div><!-- end doc-content -->
</div> <!-- end body-content -->
</body>
</html>