<instrumentation>

構文:
<instrumentation android:functionalTest=["true" | "false"]
                     android:handleProfiling=["true" | "false"]
                     android:icon="drawable resource"
                     android:label="string resource"
                     android:name="string"
                     android:targetPackage="string"
                     android:targetProcesses="string" />
上位の要素:
<manifest>
説明:
アプリとシステムのインタラクションをモニタリングできるようにする Instrumentation クラスを宣言します。インストルメンテーション オブジェクトは、アプリ コンポーネントよりも前にインスタンス化されます。
属性:
android:functionalTest
インストルメンテーション クラスを機能テストとして実行するかどうかを指定します。実行する場合は「true」、実行しない場合は「false」に設定します。デフォルト値は「false」です。
android:handleProfiling
インストルメンテーション オブジェクトによってプロファイリングのオン / オフを切り替えるかどうかを指定します。このオブジェクトによってプロファイリングの開始 / 停止のタイミングを決定する場合は「true」、オブジェクトの実行中は常にプロファイリングを継続する場合は「false」に設定します。値を「true」にした場合、このオブジェクトは、特定の処理セットにおいてプロファイリングをターゲットにすることができます。デフォルト値は「false」です。
android:icon
インストルメンテーション クラスを示すアイコン。この属性は、ドローアブル リソースへの参照として設定する必要があります。
android:label
インストルメンテーション クラスのユーザー可読形式ラベル。ラベルは、未加工の文字列として設定するか、文字列リソースへの参照として設定することができます。
android:name
Instrumentation サブクラスの名前。この属性は、完全修飾クラス名(「com.example.project.StringInstrumentation」など)にする必要があります。ただし、短縮形として、名前の最初の文字をピリオドにした場合、<manifest> 要素内で指定されているパッケージ名に付加されます。

デフォルト値はありません。名前の指定は必須です。

android:targetPackage
Instrumentation オブジェクトの実行対象となるアプリ。アプリは、マニフェスト ファイル内で <manifest> 要素によって割り当てられているパッケージ名によって識別されます。
android:targetProcesses

Instrumentation オブジェクトの実行対象となるプロセス。カンマ区切りのリストによって、インストルメンテーションの実行対象となる特定のプロセスを指定できます。値を "*" にした場合、android:targetPackage 内で定義されているアプリのすべてのプロセスに対してインストルメンテーションが実行されることを示します。

この値をマニフェスト内で指定しなかった場合、インストルメンテーションは、android:targetPackage 内で定義されているアプリのメインプロセスに対してのみ実行されます。

この属性は API レベル 26 で追加されました。

導入時の API レベル:
API レベル 1