blob: 837fc2bf5189508c4fe10405b23cf174ab1844c1 [file] [log] [blame]
page.title=アクティビティのライフサイクル 管理
page.tags=アクティビティのライフサイクル
helpoutsWidget=true
trainingnavtop=true
startpage=true
@jd:body
<div id="tb-wrapper">
<div id="tb">
<h2>必要な知識と前提条件</h2>
<ul>
<li>Android プロジェクトの作成方法(<a href="{@docRoot}training/basics/firstapp/creating-project.html">Android
プロジェクトの作成</a>を参照)</li>
</ul>
<h2>関連ドキュメント</h2>
<ul>
<li><a href="{@docRoot}guide/components/activities.html">アクティビティ</a></li>
</ul>
<h2>試してみる</h2>
<div class="download-box">
<a href="http://developer.android.com/shareables/training/ActivityLifecycle.zip" class="button">デモのダウンロード</a>
<p class="filename">ActivityLifecycle.zip</p>
</div>
</div>
</div>
<p>ユーザーがアプリ内を移動したり、アプリ外に移動したり、再びアプリに戻ったりすると、アプリの
{@link android.app.Activity} インスタンスが、それらのライフサイクルの異なる状態間で遷移します。
たとえば、アクティビティが新規に開始されると、システムのフォアグラウンドに表示され、ユーザーに認識されるようにします。
このプロセスの間に、Android システムは、ユーザー インターフェースやその他のコンポーネントが設定されたアクティビティ上で一連のライフサイクル メソッドを呼び出します。
ユーザーが別のアクティビティを開始する、または別のアプリに切り替えるアクションを実行した場合、システムはアクティビティ上で別の一連のライフサイクル メソッドを呼び出し、アクティビティがバックグラウンドに移動します(この場合、アクティビティが表示されなくなりますが、インスタンスとその状態はそのまま維持されます)。
</p>
<p>ライフサイクル コールバック メソッドでは、ユーザーがアクティビティを離れたり、再開させたりした場合のアクティビティの動作について宣言することができます。
たとえば、ストリーミング ビデオ プレーヤーをビルドしている場合、ユーザーが別のアプリに切り替えた際にビデオを一時停止したり、ネットワーク接続を終了することが可能です。ユーザーが戻った場合には、ネットワークに再接続し、一時停止した場所からビデオを再開できるようにすることができます。
</p>
<p>このクラスでは、各 {@link
android.app.Activity} インスタンスが受け取る重要なライフサイクル コールバック メソッドについて、またそれらを使用してユーザーが期待する内容でアクティビティを動作させる方法、アクティビティがそれらを必要としないときにシステムのリソースを消費しないようにする方法について学習します。
</p>
<h2>レッスン</h2>
<dl>
<dt><b><a href="starting.html">アクティビティを開始する</a></b></dt>
<dd>アクティビティのライフサイクルに関する基本、ユーザーがアプリを起動する方法、基本的なアクティビティ作成の方法について学習します。
</dd>
<dt><b><a href="pausing.html">アクティビティの一時停止と再開</a></b></dt>
<dd>アクティビティが一時停止状態(部分的に不可視)および、再開された場合の動作、そしてこれらの状態の変遷時に何をすべきかについて学習します。
</dd>
<dt><b><a href="stopping.html">アクティビティの停止と再起動</a></b></dt>
<dd>ユーザーが完全にアクティビティから移動し、その後戻ってきた場合の動作について学習します。</dd>
<dt><b><a href="recreating.html">アクティビティを再作成する</a></b></dt>
<dd>アクティビティが破棄されるときの動作と、必要に応じてアクティビティの状態を再構築する方法について学習します。
</dd>
</dl>