Mat*_*aun 8 python inheritance android monkeyrunner
我想扩展monkeyrunner API的MonkeyDevice类.我的派生类看起来像这样.
from com.android.monkeyrunner import MonkeyDevice, MonkeyRunner
class TestDevice(MonkeyDevice):
def __init__(self, serial=None):
MonkeyDevice.__init__(self)
self = MonkeyRunner.waitForConnection(deviceId=serial)
self.serial = serial
Run Code Online (Sandbox Code Playgroud)
当我test_dev = TestDevice(serial)从另一个模块调用时,我收到以下错误:
test_dev = TestDevice(serial)
TypeError: _new_impl(): 1st arg can't be coerced to com.android.monkeyrunner.core.IMonkeyDevice
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
提前致谢!
看来您无法MonkeyDevice在不调用工厂函数的情况下直接初始化实例waitForConnection。因此,您需要self在__new__()函数中进行分配,以便在调用实例之前MonkeyDevice将实例识别为继承自IMonkeyDevice__init__
例子:
class TestDevice(MonkeyDevice):
def __new__(self, serial=None):
return MonkeyRunner.waitForConnection(deviceId=serial)
def __init__(self):
MonkeyDevice.__init__(self)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
745 次 |
| 最近记录: |