Skip to content

某不知名安卓系统上u2.connect失败,提示端口绑定失败,希望u2.jar默认的9008监听端口能够支持用户自定义 #1127

@9nehS

Description

@9nehS

我们项目用了某不知名小厂定制的安卓系统,从某个版本开始,这个系统内部有个进程会监听9008端口。这个该死的进程我们还没足够的权限去杀掉,导致每次我们使用u2.connect尝试连接,都会报如下错误:
[server] INFO: [UiAutomator2Server] Starting Server
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[server] INFO: clipboardManager inited
[server] INFO: tmpdir is /data/local/tmp/u2
java.net.BindException: bind failed: EADDRINUSE (Address already in use)
libcore.io.IoBridge.bind(IoBridge.java:149)
java.net.PlainSocketImpl.socketBind(PlainSocketImpl.java:162)
java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:427)
java.net.ServerSocket.bind(ServerSocket.java:399)
java.net.ServerSocket.bind(ServerSocket.java:353)
fi.iki.elonen.NanoHTTPD$ServerRunnable.run(NanoHTTPD.java:1761)
java.lang.Thread.run(Thread.java:1012)
Caused by: android.system.ErrnoException: bind failed: EADDRINUSE (Address already in use)
libcore.io.Linux.bind(Native Method)
libcore.io.ForwardingOs.bind(ForwardingOs.java:138)
libcore.io.IoBridge.bind(IoBridge.java:145)

原因很清楚,就是那个该死进程占用了9008端口,可是我们就是没有办法去结束这个进程。这么一来,我们想继续使用uiautomator2就没法继续了,切换测试工具短时间也非常麻烦,真心希望uiautomator2这个优秀的框架支持启动u2.jar的时候能够用户自定义监听端口,比如19008,这样能够避免端口冲突的情况,谢谢。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions