ITestDevice

public interface ITestDevice
implements INativeDevice

com.android.tradefed.device.ITestDevice


ddmlib IDevice に信頼性の高い、やや高レベルの API を提供します。

デバイス コマンドを構成可能な回数再試行し、応答しないデバイスに対してデバイス復元インターフェースを提供します。

概要

ネストされたクラス

class ITestDevice.ApexInfo

単一の APEX に関する情報を保存するシンプルな構造体クラス。

class ITestDevice.MountPointInfo

単一のマウントポイントに関する情報を保存するシンプルな構造体クラス

パブリック メソッド

abstract String adbInstallPackage(File packageFile, boolean reinstall, String... extraArgs)

adb コマンドを使用してデバイスに Android パッケージをインストールします。

abstract String adbInstallPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)

adb コマンドを使用してデバイスに Android パッケージをインストールします。

abstract boolean canSwitchToHeadlessSystemUser()

ヘッドレスの SYSTEM ユーザーに切り替えることが許可されているかどうかを返します。

abstract boolean checkConnectivity()

デバイスがネットワークに接続されていることを確認します。

abstract boolean clearErrorDialogs()

デバイス UI に現在表示されているエラー ダイアログを閉じようとします。

abstract void clearLastConnectedWifiNetwork()

最後に接続された Wi-Fi ネットワークをクリアします。

default boolean connectToWifiNetwork(Map<String, String> wifiSsidToPsk, boolean scanSsid)

このメソッドは非推奨です。代わりに connectToWifiNetworkWithResult(Map,boolean) を使用してください。

default boolean connectToWifiNetwork(Map<String, String> wifiSsidToPsk)

このメソッドは非推奨です。代わりに connectToWifiNetworkWithResult(Map) を使用してください。

default boolean connectToWifiNetwork(String wifiSsid, String wifiPsk)

このメソッドは非推奨です。代わりに connectToWifiNetworkWithResult(String,String) を使用してください。

default boolean connectToWifiNetwork(String wifiSsid, String wifiPsk, boolean scanSsid)

このメソッドは非推奨です。代わりに connectToWifiNetworkWithResult(String,String,boolean) を使用してください。

default boolean connectToWifiNetworkIfNeeded(String wifiSsid, String wifiPsk, boolean scanSsid)

このメソッドは非推奨です。代わりに connectToWifiNetworkIfNeededWithResult(String,String,boolean) を使用してください。

default boolean connectToWifiNetworkIfNeeded(String wifiSsid, String wifiPsk)

このメソッドは非推奨です。代わりに connectToWifiNetworkIfNeededWithResult(String,String) を使用してください。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult(String wifiSsid, String wifiPsk, boolean scanSsid)

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult(String wifiSsid, String wifiPsk)

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(String wifiSsid, String wifiPsk, boolean scanSsid)

Wi-Fi ネットワークに接続します。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(Map<String, String> wifiSsidToPsk)

Wi-Fi ネットワークに接続します。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(Map<String, String> wifiSsidToPsk, boolean scanSsid)

Wi-Fi ネットワークに接続します。

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(String wifiSsid, String wifiPsk)

Wi-Fi ネットワークに接続します。

abstract int createUser(String name)

指定された名前とデフォルトのフラグ 0 を持つユーザーを作成します。

abstract int createUser(String name, boolean guest, boolean ephemeral)

指定された名前とフラグを使用してユーザーを作成します。

abstract int createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)

指定された名前とフラグを使用してユーザーを作成します。

abstract int createUserNoThrow(String name)

指定された名前とデフォルトのフラグ 0 を持つユーザーを作成します。

abstract void deregisterDeviceActionReceiver(IDeviceActionReceiver deviceActionReceiver)

登録済みの IDeviceActionReceiver を削除します。

abstract void disableKeyguard()

キーガードを無効にしようとします。

abstract boolean disableNetworkMonitor()

デバイスのネットワーク モニタリングを無効にします。

abstract boolean disconnectFromWifi()

Wi-Fi ネットワークから切断します。

abstract boolean doesFileExist(String deviceFilePath, int userId)

指定されたユーザーのデバイスにファイルが存在するかどうかを判断するヘルパー メソッド。

abstract File dumpHeap(String process, String devicePath)

system_server からヒープをダンプしようとします。

abstract boolean enableNetworkMonitor()

デバイスでネットワーク モニタリングを有効にします。

abstract Set<ITestDevice.ApexInfo> getActiveApexes()

デバイスで有効化された APEX に関する情報を取得します。

abstract Map<String, String> getAllSettings(String namespace)

リクエストされた Namespace の Key-Value ペアを返します。

abstract String getAndroidId(int userId)

userId に関連付けられた android-id を検索して返します。見つからない場合は null を返します。

abstract Map<Integer, String> getAndroidIds()

一致するユーザー ID が見つかった Android ID のマップを作成します。

abstract PackageInfo getAppPackageInfo(String packageName)

デバイスにインストールされているパッケージに関する情報を取得します。

abstract List<PackageInfo> getAppPackageInfos()

デバイスにインストールされているパッケージの情報を取得します。

abstract InputStreamSource getBugreport()

デバイスからバグレポートを取得します。

abstract InputStreamSource getBugreportz()

デバイスから bugreportz を取得します。

abstract DeviceFoldableState getCurrentFoldableState()

デバイスの現在の折りたたみ状態を返します。問題が発生した場合は null を返します。

abstract int getCurrentUser()

現在実行中のユーザーの ID を返します。

abstract Set<DeviceFoldableState> getFoldableStates()

デバイスの折りたたみ状態のリストを返します。

abstract Set<String> getInstalledPackageNames()

デバイスに存在するアプリのパッケージ名を取得します。

abstract String getIpAddress()

デバイスの IP アドレスを取得します。

abstract KeyguardControllerState getKeyguardState()

キーガードの現在の状態を取得するオブジェクトを返します。サポートされていない場合は null を返します。

abstract Integer getMainUserId()

メイン ユーザー ID を返します。

abstract Set<String> getMainlineModuleInfo()

デバイスにインストールされている Mainline モジュールに関する情報を取得します。

abstract int getMaxNumberOfRunningUsersSupported()

同時に実行できるユーザーの最大数を取得します。

abstract int getMaxNumberOfUsersSupported(String userType)

指定されたユーザータイプのサポート対象ユーザーの最大数を取得します。

abstract int getMaxNumberOfUsersSupported()

このメソッドは非推奨です。getMaxNumberOfUsersSupported(String userType) を使用して、特定のユーザータイプでサポートされているユーザーの最大数を取得します。

abstract TestDeviceOptions getOptions()

デバイスのテスト オプションを取得します。

abstract Integer getPrimaryUserId()

このメソッドは非推奨です。UserManager サービスから getPrimaryUser が非推奨になりました。ERROR(/android.os.UserManager#getMainUserId()) を使用して、最初のフルユーザーまたはシステムの場合は 0 を取得します。ヘッドレス システムの場合、完全なユーザーではありません。

abstract int getRemainingCreatableUserCount(String userType)

このデバイスで作成できる指定されたユーザータイプのユーザー数を返します。

abstract InputStreamSource getScreenshot(Long displayId, String format, boolean rescale)

サポートされている形式で、指定されたディスプレイ ID のデバイスからスクリーンショットを取得します。

abstract InputStreamSource getScreenshot(String format, boolean rescale)

デバイスからスクリーンショットを取得します。

abstract InputStreamSource getScreenshot(String format)

デバイスからスクリーンショットを取得します。

abstract InputStreamSource getScreenshot(long displayId)

指定されたディスプレイ ID のデバイスからスクリーンショットを取得します。

abstract InputStreamSource getScreenshot()

デバイスからスクリーンショットを取得します。

abstract String getSetting(int userId, String namespace, String key)

リクエストされた設定の値を返します。

abstract String getSetting(String namespace, String key)

getSetting(int,String,String) を参照し、システム ユーザーで実行されます。

abstract Set<String> getUninstallablePackageNames()

アンインストール可能なアプリのパッケージ名を取得します。

abstract int getUserFlags(int userId)

指定されたユーザーのフラグを見つけて返します。

abstract Map<Integer, UserInfo> getUserInfos()

デバイス上の useId と UserInfo のマップを取得します。

abstract int getUserSerialNumber(int userId)

見つかった場合は userId に関連付けられたシリアル番号を返し、それ以外の場合は -10000 を返します。

abstract int getUserVisibleOnDisplay(int displayId)

指定されたディスプレイで表示されているユーザーのユーザー ID を取得します。

abstract boolean hasFeature(String feature)

デバイスで機能が利用可能かどうかを確認します。

abstract String installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)

デバイスに Android パッケージをインストールします。

abstract String installPackage(File packageFile, boolean reinstall, String... extraArgs)

デバイスに Android パッケージをインストールします。

abstract String installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

指定されたユーザーのデバイスに Android パッケージをインストールします。

abstract String installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)

指定されたユーザーのデバイスに Android パッケージをインストールします。

abstract boolean installPackageWithIncrementalMode(File[] apkFiles, String[] extraArgs, String userId)

増分モードで apk をインストールします。

default String installPackages(List<File> packageFiles, boolean reinstall, String... extraArgs)

複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。

default String installPackages(List<File> packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)

Android デバイスに保存されている複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。

default String installPackagesForUser(List<File> packageFiles, boolean reinstall, int userId, String... extraArgs)

特定のユーザーに対して、複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。

default String installPackagesForUser(List<File> packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

特定のユーザーに対して、複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。

abstract boolean isHeadlessSystemUserMode()

デバイスがヘッドレス システム ユーザー モードを使用しているかどうかを返します。

abstract boolean isMainUserPermanentAdmin()

メインユーザーが永続的な管理者であり、削除したり管理者以外のステータスにダウングレードしたりできないかどうかを返します。

abstract boolean isMultiUserSupported()

このデバイスが、独自のログインとカスタマイズ可能なスペースを持つ複数の切り替え可能なユーザーをサポートするかどうかを返します。

abstract boolean isPackageInstalled(String packageName, String userId)

デバイスに特定のパッケージ名と特定のユーザー ID をクエリして、そのユーザーに対して現在インストールされているかどうかを確認します。

abstract boolean isPackageInstalled(String packageName)

特定のパッケージ名についてデバイスにクエリを実行し、現在インストールされているかどうかを確認します。

abstract boolean isUserRunning(int userId)

指定されたユーザーが実行中かどうかを確認します。

abstract boolean isUserSecondary(int userId)

指定されたユーザーがフラグに従ってセカンダリ ユーザーであるかどうかを返します。

abstract boolean isUserVisible(int userId)

指定されたユーザーが表示可能かどうかを確認します。

abstract boolean isUserVisibleOnDisplay(int userId, int displayId)

指定されたユーザーが指定されたディスプレイに表示されているかどうかを確認します。

abstract boolean isVisibleBackgroundUsersOnDefaultDisplaySupported()

デバイスで ERROR(/java.android.view.Display#DEFAULT_DISPLAY) のバックグラウンドでユーザーが開始したものを表示できるかどうかを返します。

abstract boolean isVisibleBackgroundUsersSupported()

デバイスでユーザーがバックグラウンドで表示されることを許可するかどうかを返します。

abstract boolean isWifiEnabled()

Wi-Fi が有効になっているかどうかをテストします。

abstract Set<Long> listDisplayIds()

「dumpsys SurfaceFlinger」でレポートされるデバイス上の利用可能なディスプレイの ID のリストを収集します。

abstract Set<Integer> listDisplayIdsForStartingVisibleBackgroundUsers()

start a user visible in the background に使用できるディスプレイのリストを取得します。

abstract ArrayList<Integer> listUsers()

デバイスのユーザーのリストを取得します。

abstract boolean logBugreport(String dataName, ITestLogger listener)

バグレポートを取得してレポーターに記録するヘルパー メソッド。

default void notifySnapuserd(SnapuserdWaitPhase waitPhase)

snapuserd の完了を待つようデバイスに通知します。

abstract void registerDeviceActionReceiver(IDeviceActionReceiver deviceActionReceiver)

このデバイスの IDeviceActionReceiver を登録します。

abstract boolean removeAdmin(String componentName, int userId)

指定されたユーザーの指定されたデバイス管理者を削除します。成功した場合は true を返し、失敗した場合は false を返します。

abstract void removeOwners()

既存のデバイス プロファイル オーナーをすべて削除します。

abstract boolean removeUser(int userId)

デバイスから指定されたユーザーを削除します。

abstract boolean setDeviceOwner(String componentName, int userId)

指定されたユーザーのデバイス オーナーとしてデバイス管理者コンポーネントを設定します。

abstract void setSetting(String namespace, String key, String value)

setSetting(int,String,String,String) を参照し、システム ユーザーで実行されます。

abstract void setSetting(int userId, String namespace, String key, String value)

特定のユーザーの Namespace に設定値を追加します。

abstract boolean startUser(int userId)

指定されたユーザーが現在停止している場合、バックグラウンドで開始します。

abstract boolean startUser(int userId, boolean waitFlag)

指定されたユーザーが現在停止している場合、バックグラウンドで開始します。

abstract boolean startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)

指定されたユーザーをバックグラウンドで開始し、指定されたディスプレイに表示します(つまり、ユーザーがそのディスプレイでアクティビティを起動できるようにします)。

abstract boolean stopUser(int userId)

指定されたユーザーを停止します。

abstract boolean stopUser(int userId, boolean waitFlag, boolean forceFlag)

指定されたユーザーを停止します。

abstract boolean switchUser(int userId)

デフォルトのタイムアウトで別の userId に切り替えます。

abstract boolean switchUser(int userId, long timeout)

指定されたタイムアウトを期限として別の userId に切り替えます。

abstract Bugreport takeBugreport()

バグレポートを取得し、処理するために Bugreport オブジェクト内で返します。

abstract String uninstallPackage(String packageName)

デバイスから Android パッケージをアンインストールします。

abstract String uninstallPackageForUser(String packageName, int userId)

指定されたユーザーのデバイスから Android パッケージをアンインストールします。

default void waitForSnapuserd(SnapuserdWaitPhase currentPhase)

想定どおりの場合は、snapuserd が完了するまで待ちます。

パブリック メソッド

adbInstallPackage

public abstract String adbInstallPackage (File packageFile, 
                boolean reinstall, 
                String... extraArgs)

adb コマンドを使用してデバイスに Android パッケージをインストールします。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

adbInstallPackage

public abstract String adbInstallPackage (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

adb コマンドを使用してデバイスに Android パッケージをインストールします。

注: この関数は、インストール時に実行時の権限の付与を明示的に制御する必要があるユースケースでのみ呼び出す必要があります。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

grantPermissions boolean: インストール時にすべてのランタイム権限を付与すべきかどうか

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

canSwitchToHeadlessSystemUser

public abstract boolean canSwitchToHeadlessSystemUser ()

ヘッドレスの SYSTEM ユーザーに切り替えることが許可されているかどうかを返します。

戻り値
boolean

例外
DeviceNotAvailableException

checkConnectivity

public abstract boolean checkConnectivity ()

デバイスがネットワークに接続されていることを確認します。

戻り値
boolean デバイスがネットワークに接続している場合は true、そうでない場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

clearErrorDialogs

public abstract boolean clearErrorDialogs ()

デバイス UI に現在表示されているエラー ダイアログを閉じようとします。

戻り値
boolean ダイアログが存在しない場合、またはダイアログが正常にクリアされた場合は true。それ以外の場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

clearLastConnectedWifiNetwork

public abstract void clearLastConnectedWifiNetwork ()

最後に接続した Wi-Fi ネットワークをクリアします。これは、新しい呼び出しを開始するときに呼び出す必要があります。これにより、デバイスの再起動後に前のテストで使用された Wi-Fi ネットワークに接続することを回避できます。

connectToWifiNetwork

public boolean connectToWifiNetwork (Map<String, String> wifiSsidToPsk, 
                boolean scanSsid)

このメソッドは非推奨です。
代わりに connectToWifiNetworkWithResult(Map,boolean) を使用してください。

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、wifiSsidToPsk マップで指定された Wi-Fi ネットワークのいずれかに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsidToPsk Map: Wi-Fi SSID とパスワードのマップ。

scanSsid boolean: このネットワークの非表示 SSID をスキャンするかどうか。

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetwork

public boolean connectToWifiNetwork (Map<String, String> wifiSsidToPsk)

このメソッドは非推奨です。
代わりに connectToWifiNetworkWithResult(Map) を使用してください。

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、wifiSsidToPsk マップで指定された Wi-Fi ネットワークのいずれかに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsidToPsk Map: Wi-Fi SSID とパスワードのマップ。

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetwork

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk)

このメソッドは非推奨です。
代わりに connectToWifiNetworkWithResult(String,String) を使用してください。

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、指定された Wi-Fi ネットワークに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsid String: 接続する Wi-Fi SSID

wifiPsk String: PSK パスフレーズ。暗号化されていない場合は null

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetwork

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

このメソッドは非推奨です。
代わりに connectToWifiNetworkWithResult(String,String,boolean) を使用してください。

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、指定された Wi-Fi ネットワークに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsid String: 接続する Wi-Fi SSID

wifiPsk String: PSK パスフレーズ。暗号化されていない場合は null

scanSsid boolean: このネットワークの非表示 SSID をスキャンするかどうか。

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetworkIfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

このメソッドは非推奨です。
代わりに connectToWifiNetworkIfNeededWithResult(String,String,boolean) を使用してください。

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

パラメータ
scanSsid boolean: このネットワークで非表示の SSID をスキャンするかどうか

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk)

このメソッドは非推奨です。
代わりに connectToWifiNetworkIfNeededWithResult(String,String) を使用してください。

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

戻り値
boolean Wi-Fi ネットワークに正常に接続された場合は truefalse それ以外の場合

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeededWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

パラメータ
scanSsid boolean: このネットワークで非表示の SSID をスキャンするかどうか

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeededWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult (String wifiSsid, 
                String wifiPsk)

デバイスが現在ネットワークに接続されていない場合にのみ接続する connectToWifiNetwork(String,String) のバリエーション。

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、指定された Wi-Fi ネットワークに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsid String: 接続する Wi-Fi SSID

wifiPsk String: PSK パスフレーズ。暗号化されていない場合は null

scanSsid boolean: このネットワークの非表示 SSID をスキャンするかどうか。

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (Map<String, String> wifiSsidToPsk)

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、wifiSsidToPsk マップで指定された Wi-Fi ネットワークのいずれかに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsidToPsk Map: Wi-Fi SSID とパスワードのマップ。

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (Map<String, String> wifiSsidToPsk, 
                boolean scanSsid)

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、wifiSsidToPsk マップで指定された Wi-Fi ネットワークのいずれかに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsidToPsk Map: Wi-Fi SSID とパスワードのマップ。

scanSsid boolean: このネットワークの非表示 SSID をスキャンするかどうか。

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (String wifiSsid, 
                String wifiPsk)

Wi-Fi ネットワークに接続します。

Wi-Fi をオンにし、指定された Wi-Fi ネットワークに接続されるまでブロックします。接続が確立されると、インスタンスは ITestDevice.disconnectFromWifi() または ITestDevice.clearLastConnectedWifiNetwork() が呼び出されるまで、再起動のたびに接続の復元を試みます。

パラメータ
wifiSsid String: 接続する Wi-Fi SSID

wifiPsk String: PSK パスフレーズ。暗号化されていない場合は null

戻り値
IWifiHelper.WifiConnectionResult WifiConnectionResult: 接続のステータスを示す。

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

createUser

public abstract int createUser (String name)

指定された名前とデフォルトのフラグ 0 を持つユーザーを作成します。

パラメータ
name String: デバイスで作成するユーザーの

戻り値
int 作成されたユーザー ID の整数

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUser

public abstract int createUser (String name, 
                boolean guest, 
                boolean ephemeral)

指定された名前とフラグを使用してユーザーを作成する

パラメータ
name String: デバイスで作成するユーザーの

guest boolean: 作成時にユーザーフラグ --guest を有効にする

ephemeral boolean: 作成時にユーザーフラグ --ephemeral を有効にする

戻り値
int 作成されたユーザーの ID

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUser

public abstract int createUser (String name, 
                boolean guest, 
                boolean ephemeral, 
                boolean forTesting)

指定された名前とフラグを使用してユーザーを作成する

パラメータ
name String: デバイスで作成するユーザーの

guest boolean: 作成時にユーザーフラグ --guest を有効にする

ephemeral boolean: 作成時にユーザーフラグ --ephemeral を有効にする

forTesting boolean: 作成時にテストフラグ --for-testing を有効にする

戻り値
int 作成されたユーザーの ID

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUserNoThrow

public abstract int createUserNoThrow (String name)

指定された名前とデフォルトのフラグ 0 を持つユーザーを作成します。

パラメータ
name String: デバイスで作成するユーザーの

戻り値
int 作成されたユーザー ID の整数。エラーの場合は -1。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

deregisterDeviceActionReceiver

public abstract void deregisterDeviceActionReceiver (IDeviceActionReceiver deviceActionReceiver)

登録済みの IDeviceActionReceiver を削除します。

パラメータ
deviceActionReceiver IDeviceActionReceiver: 削除される IDeviceActionReceiver

disableKeyguard

public abstract void disableKeyguard ()

キーガードを無効にしようとします。

まず、入力ディスパッチの準備が整うまで待機します。これは、デバイスが BOOT_COMPLETE をレポートするのとほぼ同時に非同期で行われます。現在のフレームワーク実装では、競合状態がまれに発生するためです。次に、キーガードを閉じるコマンドが送信されます(安全でないキーガードでのみ動作します)。

例外
DeviceNotAvailableException

disableNetworkMonitor

public abstract boolean disableNetworkMonitor ()

デバイスのネットワーク モニタリングを無効にします。

戻り値
boolean モニタリングが無効になった場合は true。失敗した場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

disconnectFromWifi

public abstract boolean disconnectFromWifi ()

Wi-Fi ネットワークから切断します。

既知のネットワーク リストからすべてのネットワークを削除し、Wi-Fi を無効にします。

戻り値
boolean Wi-Fi ネットワークから正常に切断された場合は true。切断に失敗した場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

doesFileExist

public abstract boolean doesFileExist (String deviceFilePath, 
                int userId)

指定されたユーザーのデバイスにファイルが存在するかどうかを判断するヘルパー メソッド。

パラメータ
deviceFilePath String: チェックするデバイス上のファイルの絶対パス

userId int: ファイルの存在を確認するユーザー ID

戻り値
boolean ファイルが存在する場合は true、それ以外の場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

dumpHeap

public abstract File dumpHeap (String process, 
                String devicePath)

system_server からヒープをダンプしようとします。ダンプされたファイルのクリーンアップは呼び出し元の責任で行います。

パラメータ
process String: dumpheap を実行するデバイス プロセスの名前。

devicePath String: ダンプを配置するデバイス上のパス。これは、権限で許可されている場所である必要があります。

戻り値
File レポートを含む File。失敗した場合は null。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

enableNetworkMonitor

public abstract boolean enableNetworkMonitor ()

デバイスでのネットワーク モニタリングを有効にします。

戻り値
boolean モニタリングが正常に有効になった場合は true。失敗した場合は false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

getActiveApexes

public abstract Set<ITestDevice.ApexInfo> getActiveApexes ()

デバイスで有効化された APEX に関する情報を取得します。

戻り値
Set<ITestDevice.ApexInfo> デバイスで現在有効になっている ApexInfoSet

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAllSettings

public abstract Map<String, String> getAllSettings (String namespace)

リクエストされた名前空間の Key-Value ペアを返します。

パラメータ
namespace String: {"system", "secure", "global"} のいずれかである必要があります。

戻り値
Map<String, String> Key-Value ペアのマップ。名前空間が対象外の場合は null。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAndroidId

public abstract String getAndroidId (int userId)

userId に関連付けられた android-id を検索して返します。見つからない場合は null を返します。

パラメータ
userId int

戻り値
String

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAndroidIds

public abstract Map<Integer, String> getAndroidIds ()

一致するユーザー ID が見つかった Android ID のマップを作成します。この関数で関連付けられた Android ID が見つかる保証はないため、一部のユーザー ID は null と一致する可能性があります。

戻り値
Map<Integer, String> 一致するユーザー ID が見つかった Android ID のマップ。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAppPackageInfo

public abstract PackageInfo getAppPackageInfo (String packageName)

デバイスにインストールされているパッケージに関する情報を取得します。

パラメータ
packageName String

戻り値
PackageInfo 情報を取得できなかった場合は PackageInfo または null

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAppPackageInfos

public abstract List<PackageInfo> getAppPackageInfos ()

デバイスにインストールされているパッケージの情報を取得します。

戻り値
List<PackageInfo> デバイスにインストールされている PackageInfoList

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getBugreport

public abstract InputStreamSource getBugreport ()

デバイスからバグレポートを取得します。

この実装は、sdcard のないデバイス(または sdcard がまだマウントされていないデバイス)でも動作し続けることが保証されています。

戻り値
InputStreamSource オンデマンドでバグレポートのコンテンツを生成する InputStreamSource。失敗した場合、InputStreamSource は空の InputStream を生成します。

getBugreportz

public abstract InputStreamSource getBugreportz ()

デバイスから bugreportz を取得します。ZIP 形式のバグレポートには、メインのバグレポートと、デバッグに役立つその他のログファイルが含まれています。

'adb version' > 1.0.36 でのみサポートされます

戻り値
InputStreamSource バグレポートを含む ZIP ファイルの InputStreamSource。失敗した場合は null を返します。

getCurrentFoldableState

public abstract DeviceFoldableState getCurrentFoldableState ()

デバイスの現在の折りたたみ状態を返します。問題が発生した場合は null を返します。

戻り値
DeviceFoldableState

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getCurrentUser

public abstract int getCurrentUser ()

現在実行中のユーザーの ID を返します。エラーの場合は、-10000 を返します。

戻り値
int

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getFoldableStates

public abstract Set<DeviceFoldableState> getFoldableStates ()

デバイスの折りたたみ状態のリストを返します。「cmd device_state print-states」で取得できます。

戻り値
Set<DeviceFoldableState>

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getInstalledPackageNames

public abstract Set<String> getInstalledPackageNames ()

デバイスに存在するアプリのパッケージ名を取得します。

戻り値
Set<String> デバイスに現在インストールされている String 個のパッケージ名の Set

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getIpAddress

public abstract String getIpAddress ()

デバイスの IP アドレスを取得します。

戻り値
String デバイスの IP アドレス。デバイスに IP アドレスがない場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

getKeyguardState

public abstract KeyguardControllerState getKeyguardState ()

キーガードの現在の状態を取得するオブジェクトを返します。サポートされていない場合は null を返します。

戻り値
KeyguardControllerState キーガードの状態のスナップショットを含む KeyguardControllerState。Keyguard クエリが対象外の場合は Null を返します。

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

getMainUserId

public abstract Integer getMainUserId ()

メイン ユーザー ID を返します。

戻り値
Integer メインユーザーがいる場合はその userId、メインユーザーがいない場合は null。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceRuntimeException デバイスからの出力が想定どおりでない場合。
DeviceNotAvailableException

getMainlineModuleInfo

public abstract Set<String> getMainlineModuleInfo ()

デバイスにインストールされている Mainline モジュールに関する情報を取得します。

戻り値
Set<String> デバイスに現在インストールされている String mainline モジュールの Set

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public abstract int getMaxNumberOfRunningUsersSupported ()

同時に実行できるユーザーの最大数を取得します。デフォルトは 0 です。

戻り値
int 同時に実行されているユーザー数を示す整数

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public abstract int getMaxNumberOfUsersSupported (String userType)

指定されたユーザータイプのサポート対象ユーザーの最大数を取得します。デフォルトは 0 です。

パラメータ
userType String: UserManager で定義されているユーザーのタイプ(「android.os.usertype.full.SECONDARY」など)。

戻り値
int 指定されたユーザータイプのサポート対象ユーザー数を示す整数

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public abstract int getMaxNumberOfUsersSupported ()

このメソッドは非推奨です。
getMaxNumberOfUsersSupported(String userType) を使用して、特定のユーザー タイプでサポートされる最大ユーザー数を取得します。

ゲストを除く、サポートされている切り替え可能なユーザーの最大数を取得します。API バージョン 36 以降では、切り替え不可能なユーザー(プロファイルなど)は含まれません。デフォルトは 0 です。

戻り値
int サポートされている切り替え可能なユーザーの数を示す整数

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getOptions

public abstract TestDeviceOptions getOptions ()

デバイスのテスト オプションを取得します。

戻り値
TestDeviceOptions テスト対象デバイスに関連する TestDeviceOptions

getPrimaryUserId

public abstract Integer getPrimaryUserId ()

このメソッドは非推奨です。
UserManager サービスから getPrimaryUser が非推奨になりました。ERROR(/android.os.UserManager#getMainUserId()) を使用して、最初のフルユーザーまたはシステムの場合は 0 を取得します。ヘッドレス システムの場合、完全なユーザーではありません。

メインユーザー ID を返します。

戻り値
Integer メインユーザーが存在する場合はその userId、メインユーザーが存在しない場合は null。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceRuntimeException デバイスからの出力が想定どおりでない場合。
DeviceNotAvailableException

getRemainingCreatableUserCount

public abstract int getRemainingCreatableUserCount (String userType)

このデバイスで作成できる指定されたユーザータイプのユーザー数を返します。

パラメータ
userType String: UserManager で定義されているユーザーのタイプ(「android.os.usertype.full.SECONDARY」など)。

戻り値
int 指定されたユーザータイプのユーザーを何人追加できるか

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (Long displayId, 
                String format, 
                boolean rescale)

サポートされている形式で、指定されたディスプレイ ID のデバイスからスクリーンショットを取得します。小さいサイズをサポートするためにリスケールを許可

パラメータ
displayId Long: スクリーンショットを取得する画面のディスプレイ ID。

format String: PNG、JPEG をサポート

rescale boolean: スクリーンショットを再スケーリングして、結果の画像のサイズを縮小するかどうか

戻り値
InputStreamSource スクリーンショットが成功しなかった場合は nullInputStreamSource

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (String format, 
                boolean rescale)

デバイスからスクリーンショットを取得します。サイズを小さくするために、代わりに JPEG エンコードで getScreenshot(String) を使用することをおすすめします。

パラメータ
format String: PNG、JPEG をサポート

rescale boolean: スクリーンショットを再スケーリングして、結果の画像のサイズを縮小するかどうか

戻り値
InputStreamSource スクリーンショットが成功しなかった場合は nullInputStreamSource

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (String format)

デバイスからスクリーンショットを取得します。サイズを小さくするために、代わりに JPEG エンコードで getScreenshot(format) を使用することをおすすめします

パラメータ
format String: PNG、JPEG をサポート

戻り値
InputStreamSource スクリーンショットが成功した場合は、形式のスクリーンショットの InputStreamSource、成功しなかった場合は null

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (long displayId)

指定されたディスプレイ ID のデバイスからスクリーンショットを取得します。形式は PNG です。

TODO: 上記の実装を拡張して「format」と「rescale」をサポートする

パラメータ
displayId long: スクリーンショットを取得する画面のディスプレイ ID。

戻り値
InputStreamSource スクリーンショットが成功しなかった場合は nullInputStreamSource

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot ()

デバイスからスクリーンショットを取得します。

戻り値
InputStreamSource スクリーンショットが成功した場合は PNG 形式のスクリーンショットの InputStreamSource、成功しなかった場合は null

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getSetting

public abstract String getSetting (int userId, 
                String namespace, 
                String key)

リクエストされた設定の値を返します。namespace は {"system", "secure", "global"} のいずれかである必要があります

パラメータ
userId int

namespace String

key String

戻り値
String ユーザーの namespace:key に関連付けられた値。見つからない場合は Null。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getSetting

public abstract String getSetting (String namespace, 
                String key)

getSetting(int,String,String) を参照し、システム ユーザーで実行されます。

パラメータ
namespace String

key String

戻り値
String

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUninstallablePackageNames

public abstract Set<String> getUninstallablePackageNames ()

アンインストール可能なアプリのパッケージ名を取得します。これは現在、システム以外のパッケージと更新されたシステム パッケージとして定義されています。

戻り値
Set<String> デバイスに現在インストールされているアンインストールできない String パッケージ名の Set

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserFlags

public abstract int getUserFlags (int userId)

指定されたユーザーのフラグを検索して返します。フラグは、Android オープンソース プロジェクトの「android.content.pm.UserInfo」クラスで定義されています。

パラメータ
userId int

戻り値
int 見つかった場合は指定された userId に関連付けられたフラグ、それ以外の場合は -10000。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserInfos

public abstract Map<Integer, UserInfo> getUserInfos ()

デバイス上の useId と UserInfo のマップを取得します。デバイスからの出力が想定どおりでない場合は、DeviceRuntimeException をスローします。

戻り値
Map<Integer, UserInfo> UserInfo オブジェクトのリスト。

例外
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.device.DeviceRuntimeException
DeviceNotAvailableException

getUserSerialNumber

public abstract int getUserSerialNumber (int userId)

見つかった場合は userId に関連付けられたシリアル番号を返し、それ以外の場合は -10000 を返します。

パラメータ
userId int

戻り値
int

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserVisibleOnDisplay

public abstract int getUserVisibleOnDisplay (int displayId)

指定されたディスプレイに表示されているユーザーのユーザー ID を取得します。

パラメータ
displayId int: ディスプレイの ID。

戻り値
int 指定されたディスプレイに表示されているユーザーのユーザー ID。可視のバックグラウンド ユーザーと現在のフォアグラウンド ユーザーはどちらも可視であるため、区別されません。区別するには、さらに getCurrentUser() の結果と比較します。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

hasFeature

public abstract boolean hasFeature (String feature)

デバイスで機能が利用可能かどうかを確認します。

パラメータ
feature String: 形式は「feature:」または「」にする必要があります。

戻り値
boolean 機能が見つかった場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

installPackage

public abstract String installPackage (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

デバイスに Android パッケージをインストールします。

注: この関数は、インストール時に実行時の権限の付与を明示的に制御する必要があるユースケースでのみ呼び出す必要があります。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

grantPermissions boolean: インストール時にすべてのランタイム権限を付与すべきかどうか

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

installPackage

public abstract String installPackage (File packageFile, 
                boolean reinstall, 
                String... extraArgs)

デバイスに Android パッケージをインストールします。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

installPackageForUser

public abstract String installPackageForUser (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

指定されたユーザーのデバイスに Android パッケージをインストールします。

注: この関数は、インストール時に実行時の権限の付与を明示的に制御する必要があるユースケースでのみ呼び出す必要があります。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

grantPermissions boolean: インストール時にすべてのランタイム権限を付与すべきかどうか

userId int: インストールする整数ユーザー ID。

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

installPackageForUser

public abstract String installPackageForUser (File packageFile, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

指定されたユーザーのデバイスに Android パッケージをインストールします。

パラメータ
packageFile File: インストールする APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

userId int: インストールする整数ユーザー ID。

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

installPackageWithIncrementalMode

public abstract boolean installPackageWithIncrementalMode (File[] apkFiles, 
                String[] extraArgs, 
                String userId)

増分モードで apk をインストールします。

パラメータ
apkFiles File: インストールする APK ファイル。

extraArgs String

userId String

戻り値
boolean

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

installPackages

public String installPackages (List<File> packageFiles, 
                boolean reinstall, 
                String... extraArgs)

複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。APK を複数のファイルに分割する方法については、https://developer.android.com/studio/build/configure-apk-splits をご覧ください。

パラメータ
packageFiles List: ローカル APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。
UnsupportedOperationException デバイスのプラットフォームでランタイム権限がサポートされていない場合。

installPackages

public String installPackages (List<File> packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Android デバイスに保存されている複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。APK を複数のファイルに分割する方法については、https://developer.android.com/studio/build/configure-apk-splits をご覧ください。

注: この関数は、インストール時に実行時の権限の付与を明示的に制御する必要があるユースケースでのみ呼び出す必要があります。

パラメータ
packageFiles List: インストールするリモート APK ファイルのパス

reinstall boolean: 再インストールを実行すべき場合は true

grantPermissions boolean: インストール時にすべてのランタイム権限を付与すべきかどうか

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。
UnsupportedOperationException デバイスのプラットフォームでランタイム権限がサポートされていない場合。

installPackagesForUser

public String installPackagesForUser (List<File> packageFiles, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

特定のユーザーに対して、複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。APK を複数のファイルに分割する方法については、https://developer.android.com/studio/build/configure-apk-splits をご覧ください。

パラメータ
packageFiles List: ローカル APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

userId int: インストールする整数ユーザー ID。

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。
UnsupportedOperationException デバイスのプラットフォームでランタイム権限がサポートされていない場合。

installPackagesForUser

public String installPackagesForUser (List<File> packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

特定のユーザーに対して、複数の APK ファイル(1 つのメイン パッケージと追加の分割パッケージ)で構成される Android アプリケーションをインストールします。APK を複数のファイルに分割する方法については、https://developer.android.com/studio/build/configure-apk-splits をご覧ください。

注: この関数は、インストール時に実行時の権限の付与を明示的に制御する必要があるユースケースでのみ呼び出す必要があります。

パラメータ
packageFiles List: ローカル APK ファイル

reinstall boolean: 再インストールを実行すべき場合は true

grantPermissions boolean: インストール時にすべてのランタイム権限を付与すべきかどうか

userId int: インストールする整数ユーザー ID。

extraArgs String: 渡す追加の引数(省略可)。使用可能なオプションについては、「adb shell pm -h」をご覧ください。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。
UnsupportedOperationException デバイスのプラットフォームでランタイム権限がサポートされていない場合。

isHeadlessSystemUserMode

public abstract boolean isHeadlessSystemUserMode ()

デバイスがヘッドレス システム ユーザー モードを使用しているかどうかを返します。

戻り値
boolean

例外
DeviceNotAvailableException

isMainUserPermanentAdmin

public abstract boolean isMainUserPermanentAdmin ()

メインユーザーが永続的な管理者であり、削除したり管理者以外のステータスに降格したりできないかどうかを返します。

戻り値
boolean

例外
DeviceNotAvailableException

isMultiUserSupported

public abstract boolean isMultiUserSupported ()

このデバイスが、独自のログインとカスタマイズ可能なスペースを持つ複数の切り替え可能なユーザーをサポートしているかどうかを返します。

false の場合でも、ログイン UI が必要ない限り、複数のユーザーが利用できる可能性があります。たとえば、プロファイルはログイン UI を必要としないため、サポートされる可能性があります。

また、config_enableMultiUserUI もチェックします。要求により、これが true であるデバイスは、adb 経由でセカンダリ ユーザーを追加できるように構成されていると想定できます。

戻り値
boolean デバイスが切り替え可能な複数のユーザーをサポートするかどうか。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isPackageInstalled

public abstract boolean isPackageInstalled (String packageName, 
                String userId)

特定のパッケージ名と特定のユーザー ID をデバイスにクエリして、そのユーザーに対して現在インストールされているかどうかを確認します。

パラメータ
packageName String: インストールされているかどうかを確認するパッケージ。

userId String: パッケージがインストールされているかどうかを確認するユーザー ID。null の場合、メインユーザー ゼロが使用されます。

戻り値
boolean パッケージがインストール済みとして報告された場合は true。それ以外は False が返されます。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isPackageInstalled

public abstract boolean isPackageInstalled (String packageName)

特定のパッケージ名についてデバイスにクエリを実行し、現在インストールされているかどうかを確認します。

パラメータ
packageName String

戻り値
boolean パッケージがインストール済みとして報告された場合は true。それ以外は False が返されます。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserRunning

public abstract boolean isUserRunning (int userId)

指定されたユーザーが実行中かどうかを確認します。

パラメータ
userId int

戻り値
boolean ユーザーが走行中の場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserSecondary

public abstract boolean isUserSecondary (int userId)

指定されたユーザーがフラグに従ってセカンダリ ユーザーであるかどうかを返します。

パラメータ
userId int

戻り値
boolean ユーザーがセカンダリの場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserVisible

public abstract boolean isUserVisible (int userId)

指定されたユーザーが表示されているかどうかを確認します。

「可視」ユーザーとは、「人間」ユーザーとやり取りしているユーザーであり、起動アクティビティ(通常はデフォルトのディスプレイ)を起動できます。

パラメータ
userId int

戻り値
boolean

例外
DeviceNotAvailableException

isUserVisibleOnDisplay

public abstract boolean isUserVisibleOnDisplay (int userId, 
                int displayId)

指定されたユーザーが指定されたディスプレイに表示されるかどうかを確認します。

「可視」ユーザーとは、「人間」ユーザーとやり取りしているユーザーであり、そのディスプレイで起動アクティビティを起動できます。

パラメータ
userId int

displayId int

戻り値
boolean

例外
DeviceNotAvailableException

isVisibleBackgroundUsersOnDefaultDisplaySupported

public abstract boolean isVisibleBackgroundUsersOnDefaultDisplaySupported ()

デバイスが ERROR(/java.android.view.Display#DEFAULT_DISPLAY) でユーザーがバックグラウンドで表示されることを許可するかどうかを返します。

その場合は、startVisibleBackgroundUser(int, int, boolean) を呼び出し、listDisplayIdsForStartingVisibleBackgroundUsers() から返されたディスプレイ(ERROR(/java.android.view.Display#DEFAULT_DISPLAY) を含む必要があります)を渡すことができます。

戻り値
boolean

例外
DeviceNotAvailableException

isVisibleBackgroundUsersSupported

public abstract boolean isVisibleBackgroundUsersSupported ()

デバイスでユーザーがバックグラウンドで表示されることを許可するかどうかを返します。

その場合は、listDisplayIdsForStartingVisibleBackgroundUsers() から返されたディスプレイを渡して startVisibleBackgroundUser(int, int, boolean) を呼び出すことができます。

戻り値
boolean

例外
DeviceNotAvailableException

isWifiEnabled

public abstract boolean isWifiEnabled ()

Wi-Fi が有効になっているかどうかをテストします。

デバイスで Wi-Fi が有効になっているかどうかを確認します。Wi-Fi で実行すべきでないテスト(モバイルデータ テストなど)の前に Wi-Fi のステータスをアサートするのに便利です。

戻り値
boolean Wi-Fi が有効な場合は true。無効の場合: false

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

listDisplayIds

public abstract Set<Long> listDisplayIds ()

「dumpsys SurfaceFlinger」でレポートされた、デバイス上の利用可能なディスプレイの ID のリストを収集します。

戻り値
Set<Long> ディスプレイのリスト。Default は常にデフォルトのディスプレイ 0 を返します。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

listDisplayIdsForStartingVisibleBackgroundUsers

public abstract Set<Integer> listDisplayIdsForStartingVisibleBackgroundUsers ()

start a user visible in the background に使用できるディスプレイのリストを取得します。

戻り値
Set<Integer>

例外
DeviceNotAvailableException

listUsers

public abstract ArrayList<Integer> listUsers ()

デバイスのユーザーのリストを取得します。デバイスからの出力が想定どおりでない場合は、DeviceRuntimeException をスローします。

戻り値
ArrayList<Integer> ユーザー ID のリスト。

例外
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.device.DeviceRuntimeException
DeviceNotAvailableException

logBugreport

public abstract boolean logBugreport (String dataName, 
                ITestLogger listener)

バグレポートを取得して報告者に記録するヘルパー メソッド。

パラメータ
dataName String: バグレポートが報告される名前。

listener ITestLogger: バグレポートをログに記録する ITestLogger

戻り値
boolean ロギングが成功した場合は true、それ以外の場合は false。

notifySnapuserd

public void notifySnapuserd (SnapuserdWaitPhase waitPhase)

snapuserd の完了を待つようデバイスに通知します。

パラメータ
waitPhase SnapuserdWaitPhase

registerDeviceActionReceiver

public abstract void registerDeviceActionReceiver (IDeviceActionReceiver deviceActionReceiver)

このデバイスの IDeviceActionReceiver を登録します。

登録されているすべての IDeviceActionReceiver は、デバイス アクションの開始前と終了後に通知を受け取ります。

パラメータ
deviceActionReceiver IDeviceActionReceiver: 登録される IDeviceActionReceiver

removeAdmin

public abstract boolean removeAdmin (String componentName, 
                int userId)

指定されたユーザーの指定されたデバイス管理者を削除し、成功した場合は true を、それ以外の場合は false を返します。

パラメータ
componentName String: 削除するデバイス管理者の。

userId int: デバイス管理者が属するユーザーの。

戻り値
boolean 成功した場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

removeOwners

public abstract void removeOwners ()

ベスト エフォートで既存のデバイス プロファイル オーナーをすべて削除します。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

removeUser

public abstract boolean removeUser (int userId)

指定されたユーザーをデバイスから削除します。

パラメータ
userId int: 削除するユーザーの

戻り値
boolean ユーザーの削除に成功した場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setDeviceOwner

public abstract boolean setDeviceOwner (String componentName, 
                int userId)

特定のユーザーのデバイス オーナーとしてデバイス管理者コンポーネントを設定します。

パラメータ
componentName String: デバイス オーナーになるデバイス管理者の。

userId int: デバイス所有者が居住する国。

戻り値
boolean 成功した場合は true、それ以外の場合は false。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setSetting

public abstract void setSetting (String namespace, 
                String key, 
                String value)

setSetting(int,String,String,String) を参照し、システム ユーザーで実行されます。

パラメータ
namespace String

key String

value String

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setSetting

public abstract void setSetting (int userId, 
                String namespace, 
                String key, 
                String value)

特定のユーザーの Namespace に設定値を追加します。一部の設定は再起動後にのみ利用可能になります。namespace は {"system", "secure", "global"} のいずれかである必要があります

パラメータ
userId int

namespace String

key String

value String

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startUser

public abstract boolean startUser (int userId)

指定されたユーザーが現在停止している場合、バックグラウンドで開始します。ユーザーがすでにバックグラウンドで実行されている場合、このメソッドは NOOP です。

パラメータ
userId int: バックグラウンドで開始するユーザーの

戻り値
boolean ユーザーがバックグラウンドで正常に開始された場合は true。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startUser

public abstract boolean startUser (int userId, 
                boolean waitFlag)

指定されたユーザーが現在停止している場合、バックグラウンドで開始します。ユーザーがすでにバックグラウンドで実行されている場合、このメソッドは NOOP です。オペレーションが有効になるまで待機するための追加のフラグを指定できます。

パラメータ
userId int: バックグラウンドで開始するユーザーの

waitFlag boolean: ユーザーが起動してロック解除されるまでコマンドを待機させます。

戻り値
boolean ユーザーがバックグラウンドで正常に開始された場合は true。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startVisibleBackgroundUser

public abstract boolean startVisibleBackgroundUser (int userId, 
                int displayId, 
                boolean waitFlag)

指定されたユーザーをバックグラウンドで開始し、指定されたディスプレイに表示します(つまり、ユーザーがそのディスプレイでアクティビティを起動できるようにします)。

注: このコマンドは、ユーザーが存在するかどうか、ディスプレイが利用可能かどうか、device supports such feature などを確認しません。

パラメータ
userId int: バックグラウンドで開始するユーザーの

displayId int: ユーザーに表示を開始するディスプレイ

waitFlag boolean: ユーザーが起動してロック解除されるまでコマンドを待機させます。

戻り値
boolean ユーザーがバックグラウンドで正常に開始された場合は true

例外
DeviceNotAvailableException

stopUser

public abstract boolean stopUser (int userId)

指定されたユーザーを停止します。ユーザーがすでに停止している場合、このメソッドは NOOP です。現在のユーザーとシステム ユーザーを停止できません。

パラメータ
userId int: 停止するユーザーの。

戻り値
boolean ユーザーが正常に停止された場合は true。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

stopUser

public abstract boolean stopUser (int userId, 
                boolean waitFlag, 
                boolean forceFlag)

指定されたユーザーを停止します。オペレーションが有効になるまで待機し、ユーザーを強制的に終了させるための追加フラグを指定できます。現在のユーザーとシステム ユーザーを停止できません。

パラメータ
userId int: 停止するユーザーの。

waitFlag boolean: ユーザーが停止するまでコマンドを待機させます。

forceFlag boolean: ユーザーを強制停止します。

戻り値
boolean ユーザーが正常に停止された場合は true。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

switchUser

public abstract boolean switchUser (int userId)

デフォルトのタイムアウトで別の userId に切り替えます。switchUser(int, long)

パラメータ
userId int

戻り値
boolean 新しい userId が userId プロバイダと一致する場合は true。それ以外は False が返されます。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

switchUser

public abstract boolean switchUser (int userId, 
                long timeout)

指定されたタイムアウトを期限として、別の userId に切り替えます。ユーザーの変更が成功したら、キーガードを無効にしようとします。

パラメータ
userId int

timeout long: ユーザー切り替えの失敗に対して false を返す前に待機します。

戻り値
boolean 新しい userId が userId プロバイダと一致する場合は true。それ以外は False が返されます。

例外
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

takeBugreport

public abstract Bugreport takeBugreport ()

バグレポートを取得し、それを Bugreport オブジェクト内で返して処理します。問題が発生した場合は null を返します。Bugreport オブジェクトで参照されるファイルは、Bugreport.close() を介してクリーンアップする必要があります。

戻り値
Bugreport

uninstallPackage

public abstract String uninstallPackage (String packageName)

デバイスから Android パッケージをアンインストールします。

パラメータ
packageName String: アンインストールする Android パッケージ

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

uninstallPackageForUser

public abstract String uninstallPackageForUser (String packageName, 
                int userId)

指定したユーザーのデバイスから Android パッケージをアンインストールします。

パラメータ
packageName String: アンインストールする Android パッケージ

userId int: アンインストールする整数ユーザー ID。

戻り値
String エラーコードを含む String、または成功した場合は null

例外
DeviceNotAvailableException デバイスとの接続が失われ、復元できない場合。

waitForSnapuserd

public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)

想定どおりの場合は、snapuserd が完了するまで待ちます。

パラメータ
currentPhase SnapuserdWaitPhase

例外
DeviceNotAvailableException