Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
S2-group
GitHub Repository: S2-group/android-runner
Path: blob/master/AndroidRunner/Browsers/Browser.py
632 views
1
import logging
2
from abc import ABC
3
4
class Browser(ABC):
5
6
# noinspection PyUnusedLocal
7
def __init__(self, package_name, main_activity):
8
self.logger = logging.getLogger(self.__class__.__name__)
9
self.package_name = package_name
10
self.main_activity = main_activity
11
12
def start(self, device):
13
self.logger.info('%s: Start' % device.id)
14
15
kwargs = {
16
'from_scratch': True,
17
'force_stop': True,
18
'action': 'android.intent.action.VIEW',
19
}
20
21
if device != None and int(device.get_version()) > 12:
22
kwargs['data_uri'] = "about:blank"
23
24
device.launch_activity(self.package_name, self.main_activity, **kwargs)
25
26
def load_url(self, device, url):
27
self.logger.info('%s: Load URL: %s' % (device.id, url))
28
device.launch_activity(self.package_name, self.main_activity, data_uri=url,
29
action='android.intent.action.VIEW')
30
31
def stop(self, device, clear_data=False):
32
self.logger.info('%s: Stop' % device.id)
33
device.force_stop(self.package_name)
34
if clear_data:
35
device.clear_app_data(self.package_name)
36
37
def to_string(self):
38
return self.package_name
39
40