uiautomator2 icon indicating copy to clipboard operation
uiautomator2 copied to clipboard

Obj.exists正常,但是obj.info 超时

Open githuuu opened this issue 3 years ago • 2 comments

  • 手机型号 Android 9.0

  • uiautomator2的版本号(pip show uiautomator2) Name: uiautomator2 Version: 2.12.1 Summary: Python Wrapper for Google Android UiAutomator2 test tool Home-page: https://github.com/openatx/uiautomator2 Author: codeskyblue Author-email: [email protected] License: MIT Location: d:\installer\conda\lib\site-packages Requires: requests, lxml, six, whichcraft, progress, logzero, Deprecated, Pillow, adbutils, packaging, retry, cached-property Required-by: weditor

  • 手机截图

  • 相关日志(Python控制台错误信息, adb logcat完整信息, atxagent.log日志)

07-01 17:47:24.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=73058
07-01 17:47:24.926  1835  1835 I ADB_SERVICES: service_to_fd tcp:7912
07-01 17:47:24.937  1835  1835 I ADB_SERVICES: local_socket_flush_incoming write_data=560
07-01 17:47:24.951  1835  1835 I ADB_SERVICES: service_to_fd tcp:7912
07-01 17:47:24.971  4547  5998 D UIAutomatorStub: URI: /jsonrpc/0, Method: POST, params, {NanoHttpd.QUERY_STRING=null}, files: {postData={"jsonrpc": "2.0", "id": 1, "method": "deviceInfo"}}
07-01 17:47:24.973  4547  5998 W QueryController: Could not detect idle state.
07-01 17:47:24.992  4547  5998 I chatty  : uid=10117(com.github.uiautomator) NanoHttpd Reque identical 2 lines
07-01 17:47:24.992  4547  5998 W QueryController: Could not detect idle state.
07-01 17:47:25.009  4547  5978 W QueryController: Could not detect idle state.
07-01 17:47:25.025  4547  5978 I chatty  : uid=10117(com.github.uiautomator) NanoHttpd Reque identical 12 lines
07-01 17:47:25.026  4547  5978 W QueryController: Could not detect idle state.
07-01 17:47:25.027  4547  5998 D UIAutomatorStub: URI: /jsonrpc/0, Method: POST, params, {NanoHttpd.QUERY_STRING=null}, files: {postData={"jsonrpc": "2.0", "id": "d5a04ed2454fdfff26e70a8773c4c62b", "method": "objInfo", "params": [{"mas
k": 1, "childOrSibling": [], "childOrSiblingSelector": [], "text": "\u6e38\u620f"}]}}
07-01 17:47:25.032  4547  5998 W QueryController: Could not detect idle state.
07-01 17:47:25.032  4547  5978 W QueryController: Could not detect idle state.
07-01 17:47:25.038  4547  5978 W QueryController: Could not detect idle state.
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD: Could not send response to the client
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD: java.net.SocketException: Broken pipe
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.net.SocketOutputStream.socketWrite0(Native Method)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:117)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.net.SocketOutputStream.write(SocketOutputStream.java:149)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$Response$ChunkedOutputStream.write(NanoHTTPD.java:1442)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$Response$ChunkedOutputStream.write(NanoHTTPD.java:1435)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.util.zip.GZIPOutputStream.writeHeader(GZIPOutputStream.java:182)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.util.zip.GZIPOutputStream.<init>(GZIPOutputStream.java:94)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.util.zip.GZIPOutputStream.<init>(GZIPOutputStream.java:109)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$Response.sendBodyWithCorrectEncoding(NanoHTTPD.java:1663)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$Response.sendBodyWithCorrectTransferAndEncoding(NanoHTTPD.java:1654)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$Response.send(NanoHTTPD.java:1624)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$HTTPSession.execute(NanoHTTPD.java:957)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at fi.iki.elonen.NanoHTTPD$ClientHandler.run(NanoHTTPD.java:192)
07-01 17:47:25.047  4547  5978 E fi.iki.elonen.NanoHTTPD:       at java.lang.Thread.run(Thread.java:764)
07-01 17:47:25.114  4547  5998 W QueryController: Could not detect idle state.
07-01 17:47:25.186  4547  4557 W System  : A resource failed to call end.
07-01 17:47:25.187  4547  4557 W System  : A resource failed to call end.
07-01 17:47:25.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=77558
07-01 17:47:26.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=77558
07-01 17:47:26.591   434  1118 I BufferQueueProducer: [com.zhuoyi.market/com.zhuoyi.market.Splash#0](this:0x7e6dcd2000,id:37,api:1,p:5345,c:434) queueBuffer: fps=4.02 dur=3980.46 max=3719.33 min=15.89
07-01 17:47:26.604   434   434 I SurfaceFlinger: [Built-in Screen (type:0)] fps:4.270425,dur:3980.87,max:3701.42,min:16.75
07-01 17:47:27.369   995  1188 E WifiVendorHal: getWifiLinkLayerStats(l.937) failed {.code = ERROR_NOT_SUPPORTED, .description = }
07-01 17:47:27.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=77558
07-01 17:47:27.602   434  1118 I BufferQueueProducer: [com.zhuoyi.market/com.zhuoyi.market.Splash#0](this:0x7e6dcd2000,id:37,api:1,p:5345,c:434) queueBuffer: fps=58.37 dur=1010.86 max=27.31 min=8.74
07-01 17:47:27.615   434   434 I SurfaceFlinger: [Built-in Screen (type:0)] fps:57.391033,dur:1010.61,max:18.46,min:14.94
07-01 17:47:28.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=72570
07-01 17:47:29.388   509   509 V thermal_src: TA_DAEMON_CMD_SET_TTJ cmd=0x4, len=4 Tj=72082
  • 最好能附上可能复现问题的代码。
>>> obj.exists(1)
17:38:22.284 $ curl -X POST -d '{"jsonrpc": "2.0", "id": "88f5f57200e504d32f8af77b21e3a00b", "method": "waitForExists", "params": [{"mask": 1, "childOrSibling": [], "childOrSiblingSelector": [], "text": "\u6e38\u620f"}, 1000]}' 'http:/
/127.0.0.1:12285/jsonrpc/0'
17:38:22.721 Response (436 ms) >>>
{"jsonrpc":"2.0","id":"88f5f57200e504d32f8af77b21e3a00b","result":true}
<<< END
True
>>>



>>> obj.info()
17:46:25.421 $ curl -X POST -d '{"jsonrpc": "2.0", "id": "4ba759d3c8259107bf8705a520a0ede4", "method": "objInfo", "params": [{"mask": 1, "childOrSibling": [], "childOrSiblingSelector": [], "text": "\u6e38\u620f"}]}' 'http://127.0.0.1:1
2285/jsonrpc/0'
17:47:25.451 $ curl -X POST -d '{"jsonrpc": "2.0", "id": 1, "method": "deviceInfo"}' 'http://127.0.0.1:12285/jsonrpc/0'
17:47:25.523 Response (71 ms) >>>
{"jsonrpc":"2.0","id":1,"result":{"currentPackageName":"com.zhuoyi.market","displayHeight":1570,"displayRotation":0,"displaySizeDpX":360,"displaySizeDpY":820,"displayWidth":720,"productName":"小辣椒50","screenOn":true,"sdkInt":28,"natu
ralOrientation":true}}
<<< END
17:47:25.529 $ curl -X POST -d '{"jsonrpc": "2.0", "id": "d5a04ed2454fdfff26e70a8773c4c62b", "method": "objInfo", "params": [{"mask": 1, "childOrSibling": [], "childOrSiblingSelector": [], "text": "\u6e38\u620f"}]}' 'http://127.0.0.1:1
2285/jsonrpc/0'
Traceback (most recent call last):
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 426, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 421, in _make_request
    httplib_response = conn.getresponse()
  File "D:\installer\conda\lib\http\client.py", line 1347, in getresponse
    response.begin()
  File "D:\installer\conda\lib\http\client.py", line 307, in begin
    version, status, reason = self._read_status()
  File "D:\installer\conda\lib\http\client.py", line 268, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "D:\installer\conda\lib\socket.py", line 669, in readinto
    return self._sock.recv_into(b)
socket.timeout: timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\installer\conda\lib\site-packages\requests\adapters.py", line 439, in send
    resp = conn.urlopen(
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 726, in urlopen
    retries = retries.increment(
  File "D:\installer\conda\lib\site-packages\urllib3\util\retry.py", line 410, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "D:\installer\conda\lib\site-packages\urllib3\packages\six.py", line 735, in reraise
    raise value
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 670, in urlopen
    httplib_response = self._make_request(
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 428, in _make_request
    self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
  File "D:\installer\conda\lib\site-packages\urllib3\connectionpool.py", line 335, in _raise_timeout
    raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='127.0.0.1', port=12285): Read timed out. (read timeout=60)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<decorator-gen-4>", line 2, in info
  File "D:\installer\conda\lib\site-packages\retry\api.py", line 73, in retry_decorator
    return __retry_internal(partial(f, *args, **kwargs), exceptions, tries, delay, max_delay, backoff, jitter,
  File "D:\installer\conda\lib\site-packages\retry\api.py", line 33, in __retry_internal
    return f()
  File "D:\installer\conda\lib\site-packages\uiautomator2\_selector.py", line 130, in info
    return self.jsonrpc.objInfo(self.selector)
  File "D:\installer\conda\lib\site-packages\uiautomator2\__init__.py", line 435, in __call__
    return self.server._jsonrpc_retry_call(self.method, params,
  File "D:\installer\conda\lib\site-packages\uiautomator2\__init__.py", line 451, in _jsonrpc_retry_call
    return self._jsonrpc_call(*args, **kwargs)
  File "D:\installer\conda\lib\site-packages\uiautomator2\__init__.py", line 471, in _jsonrpc_call
    res = self.http.post("/jsonrpc/0",
  File "D:\installer\conda\lib\site-packages\requests\sessions.py", line 578, in post
    return self.request('POST', url, data=data, json=json, **kwargs)
  File "D:\installer\conda\lib\site-packages\uiautomator2\__init__.py", line 188, in request
    return super().request(method, url, **kwargs)
  File "D:\installer\conda\lib\site-packages\uiautomator2\__init__.py", line 108, in request
    resp = super(TimeoutRequestsSession,
  File "D:\installer\conda\lib\site-packages\requests\sessions.py", line 530, in request
    resp = self.send(prep, **send_kwargs)
  File "D:\installer\conda\lib\site-packages\requests\sessions.py", line 643, in send
    r = adapter.send(request, **kwargs)
  File "D:\installer\conda\lib\site-packages\requests\adapters.py", line 529, in send
    raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='127.0.0.1', port=12285): Read timed out. (read timeout=60)

githuuu avatar Jul 01 '21 10:07 githuuu

什么应用,哪个控件,方不方便截个图?

codeskyblue avatar Jul 02 '21 03:07 codeskyblue

微信图片 应用是卓易市场,控件是所有控件都一样,外面的控件都正常,进到APP里面就会有问题,不经常打开网页,回复比较慢,不好意思

githuuu avatar Jul 06 '21 08:07 githuuu