This commit is contained in:
@@ -5,6 +5,7 @@ from dataclasses import dataclass, field
|
||||
from typing import Any
|
||||
|
||||
from core.errors import DeviceOfflineError, DriverError
|
||||
from core.models import ActiveApp
|
||||
from driver.base import Driver
|
||||
|
||||
# Android KeyEvent.KEYCODE_HOME. Kept as a literal rather than importing the
|
||||
@@ -170,6 +171,19 @@ class AndroidDriver(Driver):
|
||||
except Exception as exc:
|
||||
raise DriverError("ui tree retrieval failed") from exc
|
||||
|
||||
def active_app(self) -> ActiveApp | None:
|
||||
client = self._require_client()
|
||||
try:
|
||||
package = client.current_package
|
||||
activity = client.current_activity
|
||||
except Exception as exc:
|
||||
raise DriverError("active app retrieval failed") from exc
|
||||
package = package if isinstance(package, str) and package else None
|
||||
activity = activity if isinstance(activity, str) and activity else None
|
||||
if package is None and activity is None:
|
||||
return None
|
||||
return ActiveApp(platform="android", package=package, activity=activity)
|
||||
|
||||
def home(self) -> None:
|
||||
client = self._require_client()
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user