【问题标题】:How to check whether a service in running on particular port using adb如何使用 adb 检查服务是否在特定端口上运行
【发布时间】:2016-08-05 15:27:52
【问题描述】:

我的安卓手机中有第三方应用程序。 该应用程序在 127.0.0.1:30002 提供服务。

我不知道服务的名称。

有没有办法使用 adb 或其他方式来确定该 tcp 服务是否启动。

还有adb reverse有什么用。 我可以在主机 pc 中运行服务器并使用 adb reverse 在 android 上转发该服务器吗?

我是安卓新手,所以请简明扼要。

提前致谢。

【问题讨论】:

    标签: android android-service adb


    【解决方案1】:

    要查找使用特定端口的应用程序:

    1. $ cat /proc/net/tcp - 这将为您提供开放端口列表和端口所有者的 UId(唯一应用程序 ID)。
    2. & cat /data/system/packages.list | grep '<The UID you just found>' - 这将为您提供连接到此 UID 的应用名称。
    3.ps |grep '<the app name>'会告诉你应用服务是否正在运行。

    什么是adb reverse

    adb reverse 告诉您的手机使用本地机器的端口(例如笔记本电脑)。
    假设您使用命令:

    adb reverse tcp:80 tcp:3000
    

    现在,当您的手机尝试访问 http://localhost:3000/ 时,您的请求将被路由到您笔记本电脑的 localhost:80。

    【讨论】:

    • 当我执行 adb reverse tcp:30002 tcp:30002 命令时,但 adb reverse --list 显示错误:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-09
    相关资源
    最近更新 更多