コードを実行、デバッグまたはテストするときに、Android Studio では実行 / デバッグ構成によって操作の実行方法が決定されます。通常はデフォルトの構成で十分であり、そのままで簡単にアプリを実行またはデバッグできます。一方、開発プロセスに適合するように新規構成を変更、作成したり、デフォルトのテンプレートを変更したりすることもできます。
実行 / デバッグ構成の概要
実行 / デバッグ構成では、アプリのインストール、起動、テスト オプションなどの詳細を指定します。構成を 1 回のみ使用するように定義することも、保存して繰り返し使用することも可能です。構成を保存すると、ツールバーの [Select Run/Debug Configuration] プルダウン リストで構成を選択できます。Android Studio では、構成がプロジェクトの一部として保存されます。
デフォルトの実行 / デバッグ構成
最初に Android Studio でプロジェクトを作成すると、Android App テンプレートを基にして、メイン アクティビティに対するデフォルトの実行 / デバッグ構成が作成されます。プロジェクトを実行またはデバッグするには、必ず 1 つ以上の実行 / デバッグ構成が定義されている必要があります。そのため、この設定を削除しないことをお勧めします。
プロジェクト スコープとバージョン管理
実行 / デバッグ構成とテンプレートの変更は、現在のプロジェクトのみに適用されます。実行 / デバッグ構成を共有してプロジェクトをバージョン管理システムにチェックインする場合、構成はプロジェクトをチェックアウトしたすべてのメンバーで共有されます。テンプレートは共有できません。
実行 / デバッグ構成のダイアログを開く
[Run/Debug Configurations] ダイアログには、実行 / デバッグ構成と使用可能なデフォルト テンプレートが表示されます。このダイアログでは、次の操作が可能です。
このダイアログを開くには、次のいずれかの操作を行います。
- [Run] > [Edit Configurations] を選択します。
- ツールバーの [Select Run/Debug Configuration] プルダウン リストで、[Edit Configurations] を選択します。
このプルダウン リストは、実行アイコン
とデバッグアイコン
の左にあります。
のように表示されます。
ツールバーが表示されていない場合は、[View] > [Toolbar] を選択してツールバーを表示します。
図 1 に示すように、[Run/Debug Configurations] ダイアログが表示されます。
図 1. [Run/Debug Configurations] ダイアログ
このダイアログの左パネルでは、[Defaults] フォルダにデフォルト テンプレートが表示されています。また、定義済みの構成がテンプレートのタイプ別にグループ化されています。ダイアログのサイズを大きくして、隠れている項目を確認できます。
実行 / デバッグ構成の新規作成
新規の実行 / デバッグ構成は、[Run/Debug Configurations] ダイアログ、[Project] ウィンドウ、またはコード エディタで定義できます。新しい構成は、デフォルト テンプレートに基づいている必要があります。
[Run/Debug Configurations] ダイアログでは、テンプレートから直接、または別の構成のコピーから新しい構成を作成できます。その後、必要に応じてフィールドの値を変更できます。
または、[Project] ウィンドウで項目を右クリックして、その項目に固有の構成を自動的に作成することも可能です。たとえば、特定のアクティビティを実行する場合、そのアクティビティの Java ファイルを右クリックして [Run] を選択できます。Android Studio では、項目に応じて Android App、Android Tests、または JUnit のデフォルト テンプレートを使用して構成が作成されます。
コード エディタでは、クラスまたはメソッドに対してテスト構成および実行 / デバッグ構成を簡単に作成して実行できます。
[Run/Debug Configurations] ダイアログ以外で構成を作成した場合、これを保存しない限り構成は一時的なものとなります。デフォルトでは、プロジェクトには最大 5 個の一時的な構成を保持でき、それ以上になると Android Studio で構成が削除されます。このデフォルトを変更するには、[Run/Debug Configurations] ダイアログで [Defaults] フォルダをクリックして、[Temporary Configurations Limit] フィールドに値を入力します。一時的な構成の詳細については、一時的な実行 / デバッグ構成の作成と保存をご覧ください。
バージョン管理システムを介して、実行 / デバッグ構成を共有できます(テンプレートは共有できません)。実行 / デバッグ構成で [Shared] を選択して、プロジェクトをバージョン管理システムにチェックインした場合、このプロジェクトをチェックアウトしたすべてのメンバーがこの構成を受け取ります。
テンプレートをもとに構成を開始する
テンプレートをもとに実行 / デバッグ構成を定義するには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- 新規構成の追加アイコン
をクリックします。 - デフォルト テンプレート を 1 つ選択します。
- [Name] フィールドに名前を入力します。
- 必要に応じて構成を変更します。
- [Apply] または [OK] をクリックします。
ダイアログの下部にエラーが表示されている場合は、すべて修正してください。
コピーから構成を開始する
初めに別の構成のコピーを作成して、実行 / デバッグ構成を定義するには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- 左ペインで、既存の実行 / デバッグ構成を 1 つ選択します。
- 構成のコピーアイコン
をクリックします。 - [Name] フィールドに名前を入力します。
- 必要に応じて構成を変更します。
- [Apply] または [OK] をクリックします。
ダイアログの下部にエラーが表示されている場合は、すべて修正してください。
プロジェクト内の項目に対して構成を定義する
Android Studio では、[Project] ウィンドウに表示された一部の項目に対して実行 / デバッグ構成を自動的に作成できます。この構成は、次のデフォルト テンプレートが基になっています。
- アクティビティ Java ファイル - Android App テンプレート。
- パッケージ - Android Tests または JUnit テンプレート(ソースセットにより異なります)。インスツルメント テストを選択した場合は、Android Tests テンプレートが使用されます。ローカル ユニットテストを選択した場合は、JUnit テンプレートが使われます。ローカル ユニットテストの場合は、コード カバレッジを使って実行することも可能です。詳細については、コード カバレッジをご覧ください。
注: Android Studio では、build.gradle または settings.gradle ファイルに対しては Groovy テンプレートが使われます。これを使わずに、Gradle コンソールを使って build.gradle ファイルを実行またはデバッグする必要があります。
プロジェクト内の項目に対して実行 / デバッグ構成を作成するには、次のステップを実行します。
- Android または Project ビューでプロジェクトを開きます。
- [Project] ウィンドウで項目を右クリックして、[Run] または [Debug] を選択します。
- 構成を保存するには、ツールバーの [Select Run/Debug Configuration] プルダウン リストで [Save] を選択します。
Android Studio で一時的な実行 / デバッグ構成が作成され、アプリが起動します。
このプルダウン リストは、実行アイコン
とデバッグアイコン
の左にあります。
のように表示されます。
または、項目をもう一度右クリックして [Save] を選択します。
もしくは、[Run/Debug Configurations] ダイアログで構成を選択して、左上の構成の保存アイコン
をクリックします。
アクティビティを除き、同じ項目をもう一度右クリックして実行またはデバッグを行うと、Android Studio では新しい構成が作成されます。
クラスまたはメソッドのテスト構成を定義する
Android Studio では、クラスまたはメソッドのテスト実行構成を定義して、テストを実施できます。たとえば、新しいクラスを作成した場合、そのクラスに対するテストを作成して実行できます。テストに合格したら、プロジェクトの残りの部分に対してテストを実行して、新しいコードが他の箇所に悪影響を及ぼしていないか確認します。
Android Studio では、ソース セットに応じて Android Tests または JUnit テンプレートが使われます。ローカル ユニットテストの場合は、コード カバレッジを使って実行することも可能です。
Java コード内のクラスまたはメソッドに対して実行 / デバッグ構成を作成するには、次のステップを実行します。
- Android または Project ビューでプロジェクトを開きます。
- コード エディタで Java ファイルを開きます。
- コード内のクラスまたはメソッドを選択して、Ctrl+Shift+T キー(⌘⇧T)を押します。
- 表示されたメニューから [Create New Test] を選択します。
- [Create Test] ダイアログで必要に応じてフィールドの値を変更して、[OK] をクリックします。
- [Choose Destination Directory] ダイアログで、[
androidTest] を選択してインスツルメント テストを作成するか、testを選択してローカル ユニットテストを作成します。[OK] をクリックします。 - テストを実行するには、以下のいずれかの操作を行います。
- [Project] ウィンドウでテストを右クリックして、[Run] または [Debug] を選択します。
- コードエディタでテストファイル内のクラス定義を右クリックして、[Run] または [Debug] を選択してクラス内のすべてのメソッドをテストします。
- コードエディタでテストファイル内のメソッド名を右クリックして、[Run] または [Debug] を選択してそのメソッドのみをテストします。
- コードエディタのクラスまたはメソッドの左の余白にある再生ボタン
をクリックして、[Run] または [Debug] を選択します。
- 構成を保存するには、ツールバーの [Select Run/Debug Configuration] プルダウン リストで [Save] を選択します。
新しいテストが、[Project] ウィンドウの対応するテスト ソース セットに表示されます。
このプルダウン リストは、実行アイコン
とデバッグアイコン
の左にあります。
のように表示されます。
または、項目をもう一度右クリックして [Save] を選択します。
もしくは、[Run/Debug Configurations] ダイアログで構成を選択して、左上の構成の保存アイコン
をクリックします。
保存した構成を使ったアプリの実行またはデバッグ
実行 / デバッグ構成を保存したら、アプリを実行またはデバッグする前に構成を選択できます。
保存した実行 / デバッグ構成を使うには、次のステップを実行します。
- ツールバーの [Select Run/Debug Configuration] プルダウン リストで実行 / デバッグ構成を選択します。
- [Run] > [Run] または [Run] > [Debug] を選択します。
このプルダウン リストは、実行アイコン
とデバッグアイコン
の左にあります。
のように表示されます。
または、実行アイコン
またはデバッグアイコン
を選択します。
注: Instant Run セッションの間に別の実行 / デバッグ構成を選択して実行アイコン
またはデバッグアイコン
を再度クリックすると、現在のセッションが終了します。
実行 / デバッグ構成の編集
実行 / デバッグ構成を編集するには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- 左ペインで構成を選択します。
- 必要に応じて構成を変更します。
- [Apply] または [OK] をクリックします。
ダイアログの下部にエラーが表示されている場合は、すべて修正してください。
デフォルトの実行 / デバッグ構成テンプレートの編集
Android Studio に用意されているデフォルトのテンプレートを開発プロセスに合わせて編集することができます。テンプレートを編集しても、そのテンプレートを使用している既存の構成には影響がありません。したがって、たとえば特定のタイプの複数の構成を作成する必要がある場合、テンプレートを編集して、終了したら元に戻すことができます。
新しいテンプレートは作成できませんが、構成を作成してテンプレートと同様に使うことができます。構成をコピーして、そのコピーを編集して新しい構成を作成します。
テンプレートを編集するには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- Defaults フォルダを展開してデフォルト テンプレートを選択します。
- 必要に応じて構成を変更します。
- [Apply] または [OK] をクリックします。
ダイアログの下部にエラーが表示されている場合は、すべて修正してください。
構成の並べ替えとグループ化
[Run/Debug Configurations] ダイアログで、構成を整理して簡単に見つけられるようにすることができます。フォルダ内の項目をアルファベット順に並べ替えたり、新規フォルダを作成して構成をグループ化したりできます。
構成をアルファベット順に並べ替えるには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- 構成が含まれているフォルダを選択します。
- [Sort Configurations] アイコン
をクリックします。 - [Apply] または [OK] をクリックします。
構成をフォルダにグループ化するには、次のステップを実行します。
- [Run/Debug Configurations] ダイアログを開きます。
- 構成が含まれているフォルダを選択します。
- フォルダの新規作成アイコン
をクリックします。 - [Name] フィールドに名前を入力します。
- 同じテンプレート カテゴリの項目をフォルダにドラッグします。
- 同じテンプレート カテゴリ内のフォルダや構成を目的の位置にドラッグするか、上に移動アイコン
および下に移動アイコン
を使って順序を変更します。 - [Apply] または [OK] をクリックします。
起動前操作の定義
実行 / デバッグ構成を適用する前に実行するタスクを指定できます。タスクは、リスト内の表示順に実行されます。起動前タスクの定義は高度な機能です。
この機能を使う代わりに、すべての準備ロジックをタスクとして build.gradle ファイルに追加して、ビルドするときにコマンドラインから実行できるようにすることをお勧めします。
タスクリストを作成するには、次のステップを実行します。
- タスクをリストに追加するには、追加アイコン
をクリックしてタスクのタイプを選択します。ダイアログが表示された場合は、各フィールドに値を入力して [OK] をクリックします。 - 必要に応じて、さらにタスクを追加します。
- タスクの順序を変更するには、上へアイコン
および下へアイコン
をクリックしてリスト内でタスクを上下に移動します。 - 実行 / デバッグ構成設定を適用する前にこの設定を表示する場合は、[Show this page] を選択します。
このオプションは、デフォルトでは未選択になっています。
- アプリを実行またはデバッグするときに Run または Debug ツール ウィンドウを自動的にアクティブにするには、[Active tool window] を選択します。
このオプションは、デフォルトで選択されています。
タスクをリストから削除するには、次のステップを実行します。
- タスクを選択します。
- 削除アイコン
をクリックします。
タスクを編集するには、次のステップを実行します。
- タスクを選択します。
- 編集アイコン
をクリックします。 - 表示されたダイアログでタスクの設定を編集して、[OK] をクリックします。
次の表に、追加できるタスクの一覧を示します。
| タスク | 説明 |
|---|---|
| Run External tool | Android Studio 外部のアプリケーションを実行します。[External Tools] ダイアログで実行するアプリケーションを 1 つ以上選択して、[OK] をクリックします。アプリケーションが Android Studio で未定義である場合は、その定義を [Create Tools] ダイアログで追加します。詳細については、サードパーティ ツールの設定および外部ツールをご覧ください。 |
| Run Another Configuration | いずれかの既存の実行 / デバッグ構成を実行します。[Choose Configuration to Execute] ダイアログで、実行する構成を選択して [OK] をクリックします。 |
| Make | プロジェクトまたはモジュールをコンパイルします。実行 / デバッグ構成で特定のモジュールが指定されている場合、Android Studio は Make Module コマンドを実行します。モジュールが指定されていない場合は Make Project コマンドを実行します。 |
| Make Project | プロジェクトをコンパイルします。Android Studio は Make Project コマンドを実行します。 |
| Make, no error check | このオプションは Make と同じですが、Android Studio がコンパイルの結果に関係なく実行 / デバッグ構成を実行する点が異なります。 |
| Build Artifacts | Android Studio ではサポートされません。 |
| Run Gradle task | Gradle タスクを実行します。表示されたダイアログで詳細を指定して、[OK] をクリックします。詳細については、Gradle をご覧ください。 |
| Gradle-aware Make | プロジェクトをコンパイルして Gradle を実行します。 |
| App Engine Gradle builder | App Engine Gradle builder タスクでは、プロジェクトを同期してモジュールをビルドします。 |
デフォルトの実行 / デバッグ構成のテンプレート
Android Studio では、簡単に構成を開始できるようにデフォルトの構成テンプレートが用意されています。Android Studio を使用した Android 開発では、以下のテンプレートが適用されます。
注: Android Studio 2.1.x 以下には Native Application テンプレートがありましたが、これより新しいバージョンではこのテンプレートは提供されません。プロジェクトに Native Application テンプレートが含まれている場合、Android Studio ではプロジェクトのロード時にこのテンプレートを自動的に Android App に変換します。[Convert Project] ダイアログの指示に従って、この処理を完了できます。
以下の未サポートのテンプレートは IntelliJ IDEA 由来のものであり、Android Studio を使用した Android 開発に特化したものではありません。
- Application
- Compound
- Gradle
- Groovy
- JAR Application
- JUnit Test Discovery
- Java Scratch
- Remote
- TestNG
- TestNG Test Discovery
これらのテンプレートの詳しい使用方法については、リンク先の IntelliJ IDEA のドキュメントをご覧ください。
Android App
このテンプレートを基にした構成を使用すると、仮想端末またはハードウェア端末上で Android アプリやアクティビティを実行またはデバッグできます。
名前と共有
実行 / デバッグ構成には [Name] と [Share] のオプションがあります。テンプレートにはこれらのオプションはありません。
| フィールド | 説明 |
|---|---|
| Name | 実行 / デバッグ構成の名前。 |
| Share | バージョン管理を介して実行 / デバッグ構成を他のチームメンバーでも利用可能にするには、このオプションを選択します。実行 / デバッグ構成は共有できますが、テンプレートは共有できません。このオプションを選択して、Git(または別のバージョン管理システム)にプロジェクトをチェックインすると、別のメンバーがプロジェクトをチェックアウトした際に、実行 / デバッグ構成が含まれるようになります。
Android Studio では、共有の実行 / デバッグ構成が デフォルト: 未選択 |
[General] タブ
[General] タブでは、インストール、起動、デプロイのオプションを指定できます。インストールのオプションは、[Miscellaneous] タブにも含まれています。
| フィールド | 説明 |
|---|---|
| Module | この構成を適用するモジュールを選択します。 |
| Installation Options:Deploy | オプションを選択します。
|
| Installation Options:Install Flags | 使用する任意の adb pm
install オプションを入力します。コマンドラインで使用する場合と同様の形式を使いますが、パスは含めません。例をいくつか示します。
デフォルト: オプションなし |
| LaunchOptions:Launch | オプションを選択します。
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> |
| LaunchOptions:Launch Flags | 使用する任意の adb am
start オプションを入力します。コマンドラインで使用する場合と同様の形式を使いますが、インテントは含めません。次に例を示します。
このオプションは、[Launch] の値に [Nothing] を選択した場合は表示されません。 デフォルト: オプションなし |
| Deployment Target Options:Target | オプションを選択します。
|
Deployment Target Options:Use same device for future launches |
[Select Deployment Target] ダイアログで選択した端末を今後も自動的に使用するには、このオプションを選択します。端末を使用できない場合、ダイアログが表示されます。デフォルト: 未選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Miscellaneous] タブ
[Miscellaneous] タブでは、logcat、インストール、起動、デプロイのオプションを指定できます。インストールのオプションは、[General] タブにも含まれています。
| フィールド | 説明 |
|---|---|
| Logcat:Show logcat automatically | このオプションを選択すると、この構成を使ってアプリを正常にデプロイおよび起動した場合に、毎回 Android Monitor の [logcat] タブが自動的にアクティブになります。選択しない場合は、アプリの起動時にフォーカスは自動的に [logcat] タブに移動しません。デフォルト: 選択 |
| Logcat:Clear log before launch | アプリを起動する前に Android Studio で以前のセッションのデータがログファイルから削除されるようにするには、このオプションを選択します。デフォルト: 未選択 |
| Installation Options:Skip installation if APK has not changed | これを選択すると、APK に変更がないことが Android Studio で検出された場合に APK が再デプロイされません。Android Studio で APK に変更がなくても APK のインストールが強制されるようにするには、このオプションの選択を解除します。デフォルト: 選択 |
| Installation Options:Force stop running application before launching activity | これを選択すると、Android Studio によって、APK に変更がないために APK の再インストールが不要であると判断された場合に、強制的にアプリが停止されます。その場合、アプリはデフォルトのランチャー アクティビティから起動します。このオプションが選択解除された場合、Android Studio ではアプリを強制停止しません。 このオプションは、APK をインストールするかどうかを制御する前出のオプションと連動します。明示的に毎回のインストールを強制する場合を除き、両方の [Installation Options] フィールドをデフォルトのままにしておいてください。 ただし、このオプションを選択解除すべき場合もあります。たとえば、入力メソッド エンジン(IME)を作成している場合などです。アプリが強制停止されると、現在のキーボードとして選択されている IME が未選択になりますが、これは望ましくありません。 デフォルト: 選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Debugger] タブ
[Debugger] タブで、デバッグ オプションを指定します。
C および C++ コードの場合、Android Studio では LLDB デバッガーが使われます。通常の Android Studio UI に加えて、デバッガー ウィンドウに [LLDB] タブが表示されるため、デバッグ中に LLDB コマンドを入力できます。Android Studio で情報を表示するために使用されるコマンドと同じものをデバッガー UI に入力して、追加の操作を実行できます。
C および C++ プロジェクトの場合は、シンボル ディレクトリに加えて LLDB のスタートアップ コマンドやポストアタッチ コマンドを [Debugger] タブに追加できます。これを行うには、次のようなボタンを使用します。
- 追加
- ディレクトリまたはコマンドを追加します。 - 削除
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、アイテムが削除されます。 - 上へ
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、リスト内でアイテムが上に移動します。 - 下へ
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、リスト内でアイテムが下に移動します。
Android Studio でのデバッグの詳細については、アプリのデバッグをご覧ください。
| フィールド | 説明 |
|---|---|
| Debug type | 次のいずれかのオプションを選択します。
推奨設定は、プロジェクトに適したデバッグ タイプが自動で選択される [Auto] です。 |
| 試験運用版: Use Java aware C++ debugger - Android N+ only | 同一の LLDB デバッグ セッションで C++ コードと Java Android コードの両方をデバッグする場合に、このオプションを選択します。Java 対応の C++ デバッガーは [Native] デバッガー モードの拡張であり、C++ のデバッグに加えて Java もサポートしています。 この機能を使用するためのプロジェクトの要件は次のとおりです。
[Debug type] に [Auto] を選択し、プロジェクト要件が満たされていれば、Android Studio では自動的にこのオプションが選択されます。LLDB を使って Java のみのプロジェクトをデバッグする場合は、このオプションと [Native] を選択できます。 Android Studio 2.2 の時点で、この機能は試験運用版です。詳細については、試験運用版の Java 対応 C++ デバッガーの使用をご覧ください。 デフォルト: 未選択 |
| Symbol Directories | シンボル ファイルを追加して Android Studio 以外で生成された C または C++ の情報をデバッガーに提供する場合は、ここで 1 つ以上のディレクトリを追加できます。Android Studio では、Android Plugin for Gradle で生成されたファイルよりも、これらのディレクトリ内のファイルが優先的に使用されます。デバッガーでは、必要な項目が見つかるまでディレクトリを上から下へ順次検索します。ディレクトリ内ではすべてのファイルが再帰的に検索されます。リストを最適化して所要時間を削減するには、最も使用頻度の高いディレクトリをリストの上部に配置します。 ツリーの上位階層にあるディレクトリを指定すると、サブディレクトリをすべて検索するのに時間がかかります。検索時間を短縮するには、特定のディレクトリを指定します。検索速度とデバッグに必要なファイル検出の適切なバランスを見極める必要があります。たとえば、異なる Android バイナリ インターフェース(ABI)向けの複数のサブディレクトリを含むディレクトリがある場合は、特定の ABI のディレクトリを追加することも、すべての ABI のディレクトリを追加することもできます。上位レベルのディレクトリから全体を検索すると長時間かかる場合がありますが、異なる端末でデバッグを行う場合は、失敗する可能性が格段に低くなります。 Gradle シンボル ファイルを含むディレクトリはデバッガーが自動的に使用するため、このようなファイルを追加する必要はありません。 |
| LLDB スタートアップ コマンド | デバッガーをプロセスにアタッチする前に実行する LLDB コマンドを追加します。たとえば、次に示すコマンドのように、環境の設定を定義できます。
LLDB は、コマンドを上から下に順次実行します。 |
| LLDB ポストアタッチ コマンド | デバッガーをプロセスにアタッチした直後に実行する LLDB コマンドを追加します。次に例を示します。
LLDB は、コマンドを上から下に順次実行します。 |
| Host working directory | LLDB 作業ディレクトリを指定します。 |
| Logging:Target channels | LLDB ログ オプションを指定します。Android Studio では、低速になり過ぎず、かつ問題のトラブルシューティングに必要な情報が含まれるように、経験則に基づいたデフォルトのオプションが設定されています。通常、ログは Android Studio バグレポートに対してリクエストされます。デフォルトは次のとおりです。
このデフォルトを変更して、より多くの情報を収集できます。たとえば、次のログ オプションでは特定の lldb process
platform:gdb-remote packets
Android Studio の LLDB シェル ウィンドウで
Android Studio では、端末のログが次の場所に配置されます。ここで、
複数のユーザーが端末にアクセスする場合、ログは次の場所に配置されます。ここで、
リモート デバッグに LLDB を使用する方法の詳細については、リモート デバッグをご覧ください。 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Profiling] タブ
[Profiling] タブで、Android Monitor 用の GPU デバッガー プロファイリング オプションを指定します。
| フィールド | 説明 |
|---|---|
| Graphics Trace Options:Capture GPU Commands | これを有効にすると、この実行 / デバッグ構成によって GPU トレース対応のアプリがビルド、インストール、および実行されます。アプリのデバッグ中のトレースはサポートされていません。GPU トレースを有効にしてアプリをデバッグすると、メッセージが表示され、デバッガーはトレースなしで起動します。このオプションは、GPU デバッガー ツールに関連します。 このチェックボックスをオンにすると、アプリは起動するたびにデバッガーか GPU デバッガーがアタッチされるまで停止します。 |
| Graphics Trace Options:Disable precompiled shaders and programs | このオプションを選択すると、トレース中はプリコンパイルされたシェーダーとプログラム バイナリの OpenGL ES グラフィック ドライバのサポートが無効になります。このオプションは、GPU デバッガー ツールに関連します。
プリコンパイルされたシェーダーはトレース再生に対応していないため、
アプリで デフォルト: 未選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
Android Tests
ソースセットに応じて使用する必要があるテスト テンプレートです。Android Tests テンプレートは、インスツルメント テスト用です。JUnit テンプレートは、ローカル ユニットテスト用です。
Firebase Test Lab を利用してさまざまな端末でテストを行う場合は、このテンプレートを使ってインスツルメント テストを定義できます。詳細については、Firebase Test Lab を使ってテストを実行するをご覧ください。
名前と共有
実行 / デバッグ構成には [Name] と [Share] のオプションがあります。テンプレートにはこれらのオプションはありません。
| フィールド | 説明 |
|---|---|
| 名前 | 実行 / デバッグ構成の名前。 |
| 共有 | バージョン管理を介して実行 / デバッグ構成を他のチームメンバーでも利用可能にするには、このオプションを選択します。実行 / デバッグ構成は共有できますが、テンプレートは共有できません。このオプションを選択して、Git(または別のバージョン管理システム)にプロジェクトをチェックインすると、別のメンバーがプロジェクトをチェックアウトした際に、実行 / デバッグ構成が含まれるようになります。
Android Studio では、共有の実行 / デバッグ構成が デフォルト: 未選択 |
[General] タブ
[General] タブでは、テストの場所、インスツルメンテーション ランナー、adb シェル、デプロイのオプションを指定できます。
| フィールド | 説明 |
|---|---|
| Module | この構成を適用するモジュールを選択します。 |
| Test | この領域では、テストを実行する場所を指定します。
|
| Specific instrumentation runner(省略可能) | インスツルメンテーション ランナーの場所を入力します。… をクリックしてダイアログを使用します。build.gradle ファイルで指定されているインスツルメンテーション ランナーの場所より、このフィールドの値が優先されます。通常、デフォルトは Android Testing Support Library の AndroidJUnitRunner クラスです。
|
| Extra options | 使用する任意の adb am
instrument オプションを入力します。コンポーネントを入力しないでください。たとえば、Android Testing Support Library の AndroidJUnitRunner を使用している場合は、このフィールドを使って -e size small などの追加オプションをランナーに渡すことができます。デフォルト: オプションなし
|
| Deployment Target Options:ターゲット | オプションを選択します。
|
| Deployment Target Options:Use same device for future launches | [Select Deployment Target] ダイアログで選択した端末を今後も自動的に使用するには、このオプションを選択します。端末を使用できない場合、ダイアログが表示されます。デフォルト: 未選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Miscellaneous] タブ
[Miscellaneous] タブには、logcat とインストールのオプションが含まれています。
| フィールド | 説明 |
|---|---|
| Logcat:Clear log before launch | アプリを起動する前に以前のセッションのデータがログファイルから削除されるようにするには、このオプションを選択します。デフォルト: 未選択 |
| Installation Options:Skip installation if APK has not changed | これを選択すると、APK に変更がないことが Android Studio で検出された場合に APK が再デプロイされません。Android Studio で APK に変更がなくても APK のインストールが強制されるようにするには、このオプションの選択を解除します。デフォルト: 選択 |
| Installation Options:Force stop running application before launching activity | これを選択すると、Android Studio によって、APK に変更がないために APK の再インストールが不要であると判断された場合に、強制的にアプリが停止されます。その場合、アプリはデフォルトのランチャー アクティビティから起動します。このオプションが選択解除された場合、Android Studio ではアプリを強制停止しません。 このオプションは、APK をインストールするかどうかを制御する前出のオプションと連動します。明示的に毎回のインストールを強制する場合を除き、両方の [Installation Options] フィールドをデフォルトのままにしておいてください。 ただし、このオプションを選択解除すべき場合もあります。たとえば、入力メソッド エンジン(IME)を作成している場合などです。アプリが強制停止されると、現在のキーボードとして選択されている IME が未選択になりますが、これは望ましくありません。 デフォルト: 選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Debugger] タブ
[Debugger] タブで、デバッグ オプションを指定します。
C および C++ コードの場合、Android Studio では LLDB デバッガーが使われます。通常の Android Studio UI に加えて、デバッガー ウィンドウに [LLDB] タブが表示されるため、デバッグ中に LLDB コマンドを入力できます。Android Studio で情報を表示するために使用されるコマンドと同じものをデバッガー UI に入力して、追加の操作を実行できます。
C および C++ プロジェクトの場合は、シンボル ディレクトリに加えて LLDB のスタートアップ コマンドやポストアタッチ コマンドを [Debugger] タブに追加できます。これを行うには、次のようなボタンを使用します。
- 追加
- ディレクトリまたはコマンドを追加します。 - 削除
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、アイテムが削除されます。 - 上へ
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、リスト内でアイテムが上に移動します。 - 下へ
- ディレクトリまたはコマンドを選択してこのボタンをクリックすると、リスト内でアイテムが下に移動します。
Android Studio でのデバッグの詳細については、アプリのデバッグをご覧ください。
| フィールド | 説明 |
|---|---|
| Debug type | 次のいずれかのオプションを選択します。
推奨設定は、プロジェクトに適したデバッグ タイプが自動で選択される [Auto] です。 |
| 試験運用版: Use Java aware C++ debugger - Android N+ only | 同一の LLDB デバッグ セッションで C++ コードと Java Android コードの両方をデバッグする場合に、このオプションを選択します。Java 対応の C++ デバッガーは [Native] デバッガー モードの拡張であり、C++ のデバッグに加えて Java もサポートしています。 この機能を使用するためのプロジェクトの要件は次のとおりです。
[Debug type] に [Auto] を選択し、プロジェクト要件が満たされていれば、Android Studio では自動的にこのオプションが選択されます。LLDB を使って Java のみのプロジェクトをデバッグする場合は、このオプションと [Native] を選択できます。 Android Studio 2.2 の時点で、この機能は試験運用版です。詳細については、試験運用版の Java 対応 C++ デバッガーの使用をご覧ください。 デフォルト: 未選択 |
| Symbol Directories | シンボル ファイルを追加して Android Studio 以外で生成された C または C++ の情報をデバッガーに提供する場合は、ここで 1 つ以上のディレクトリを追加できます。Android Studio では、Android Plugin for Gradle で生成されたファイルよりも、これらのディレクトリ内のファイルが優先的に使用されます。デバッガーでは、必要な項目が見つかるまでディレクトリを上から下へ順次検索します。ディレクトリ内ではすべてのファイルが再帰的に検索されます。リストを最適化して所要時間を削減するには、最も使用頻度の高いディレクトリをリストの上部に配置します。 ツリーの上位階層にあるディレクトリを指定すると、サブディレクトリをすべて検索するのに時間がかかります。検索時間を短縮するには、特定のディレクトリを指定します。検索速度とデバッグに必要なファイル検出の適切なバランスを見極める必要があります。たとえば、異なる Android バイナリ インターフェース(ABI)向けの複数のサブディレクトリを含むディレクトリがある場合は、特定の ABI のディレクトリを追加することも、すべての ABI のディレクトリを追加することもできます。上位レベルのディレクトリから全体を検索すると長時間かかる場合がありますが、異なる端末でデバッグを行う場合は、失敗する可能性が格段に低くなります。 Gradle シンボル ファイルを含むディレクトリはデバッガーが自動的に使用するため、このようなファイルを追加する必要はありません。 |
| LLDB スタートアップ コマンド | デバッガーをプロセスにアタッチする前に実行する LLDB コマンドを追加します。たとえば、次に示すコマンドのように、環境の設定を定義できます。
LLDB は、コマンドを上から下に順次実行します。 |
| LLDB ポストアタッチ コマンド | デバッガーをプロセスにアタッチした直後に実行する LLDB コマンドを追加します。次に例を示します。
LLDB は、コマンドを上から下に順次実行します。 |
| Host working directory | LLDB 作業ディレクトリを指定します。 |
| Logging:Target channels | LLDB ログ オプションを指定します。Android Studio では、低速になり過ぎず、かつ問題のトラブルシューティングに必要な情報が含まれるように、経験則に基づいたデフォルトのオプションが設定されています。通常、ログは Android Studio バグレポートに対してリクエストされます。デフォルトは次のとおりです。
このデフォルトを変更して、より多くの情報を収集できます。たとえば、次のログ オプションでは特定の lldb process
platform:gdb-remote packets
Android Studio の LLDB シェル ウィンドウで
Android Studio では、端末のログが次の場所に配置されます。ここで、
複数のユーザーが端末にアクセスする場合、ログは次の場所に配置されます。ここで、
リモート デバッグに LLDB を使用する方法の詳細については、リモート デバッグをご覧ください。 |
| Before Launch | 起動前操作の定義をご覧ください。 |
[Profiling] タブ
[Profiling] タブで、Android Monitor 用の GPU デバッガー プロファイリング オプションを指定します。
| フィールド | 説明 |
|---|---|
| Graphics Trace Options:Capture GPU Commands | これを有効にすると、この実行 / デバッグ構成によって GPU トレース対応のアプリがビルド、インストール、および実行されます。アプリのデバッグ中のトレースはサポートされていません。GPU トレースを有効にしてアプリをデバッグすると、メッセージが表示され、デバッガーはトレースなしで起動します。このオプションは、GPU デバッガー ツールに関連します。 このチェックボックスをオンにすると、アプリは起動するたびにデバッガーか GPU デバッガーがアタッチされるまで停止します。 |
| Graphics Trace Options:Disable precompiled shaders and programs | このオプションを選択すると、トレース中はプリコンパイルされたシェーダーとプログラム バイナリの OpenGL ES グラフィック ドライバのサポートが無効になります。このオプションは、GPU デバッガー ツールに関連します。
プリコンパイルされたシェーダーはトレース再生に対応していないため、
アプリで デフォルト: 未選択 |
| Before Launch | 起動前操作の定義をご覧ください。 |
App Engine DevAppServer
この実行 / デバッグ構成は、Google Cloud Platform に適用されます。詳細については、App Engine Java Servlet モジュールの追加およびバックエンドの実行、テスト、デプロイをご覧ください。これらのドキュメントで説明されているステップに従ってプロジェクトを build.gradle ファイルに同期するときに、Android Studio によって App Engine DevAppServer 構成が作成されます。
IntellJ IDEA の App Engine Server テンプレートは、Android Studio では利用できない別のテンプレートです。
| フィールド | 説明 | 名前 | 実行 / デバッグ構成の名前。 |
|---|---|
| 共有 | バージョン管理を介して実行 / デバッグ構成を他のチームメンバーでも利用可能にするには、このオプションを選択します。実行 / デバッグ構成は共有できますが、テンプレートは共有できません。このオプションを選択して、Git(または別のバージョン管理システム)にプロジェクトをチェックインすると、別のメンバーがプロジェクトをチェックアウトした際に、実行 / デバッグ構成が含まれるようになります。
Android Studio では、共有の実行 / デバッグ構成が デフォルト: 未選択 |
| Single instance only | 一度に実行する実行 / デバッグ構成のインスタンスを 1 つに制限するには、このオプションを選択します。これにより、同時に複数の同じ構成が実行されなくなります。デフォルト: 選択 |
| Module | この構成を適用するモジュールを選択します。 |
| Synchronize with build.gradle configuration | App Engine モジュールを追加して build.gradle ファイルと同期する場合、App Engine DevAppServer 構成の各フィールドが自動的に入力されます(推奨)。[Tools] > [Android] > [Sync Project with Gradle Files] を選択しても、プロジェクトが同期されます。デフォルト: 選択
|
| App Engine SDK | ローカル マシン上の Java の Google App Engine SDK へのパスを入力します。... をクリックしてダイアログでパスを選択します。 |
| War Path | ローカルの開発用サーバー上でデプロイしているアプリの Web Application Archive(WAR)ディレクトリへのパスを入力します。... をクリックしてダイアログでパスを選択します。 |
| VM Args | DevAppServer を起動するために VM に渡すコマンドライン オプションを指定します。オプションを指定する際には、以下の点に注意してください。
VM オプションの詳細については、 デフォルト: オプションなし |
| Server Address | サーバーに使用するホスト アドレスを入力します。ネットワーク上の別のコンピュータから開発用サーバーにアクセスできるようにするために、アドレスを指定する必要がある場合があります。アドレスを 0.0.0.0 にすると、localhost アクセスと ホスト名アクセスの両方が可能になります。デフォルト: localhost |
| Server Port | サーバーに使用するポート番号を入力します。デフォルト: 8080 |
| Disable Check for App Engine SDK Updates | このオプションを選択すると、開発用サーバーは SDK の新しいリリースが利用可能かどうかをチェックするための App Engine との通信を行いません。デフォルトでは、サーバーは起動時に新しいバージョンのチェックを実行して、新しいバージョンが利用可能な場合はメッセージを出力します。 |
| Before Launch | 起動前操作の定義をご覧ください。 |