如何直接从 Android Wear 通过 WiFi 发出 HTTP 请求?

How to make HTTP Requests over WiFi directly from Android Wear?

如何在 Android Wear 上执行 HTTP 请求或打开套接字?我曾经认为那是不可能的,但 Web Browser for Android Wear 应用程序显示以下内容:

"[..] works even when your phone is off if you have a smartwatch with Android Wear 5.1 and WiFi"*.

我测试了它,当配对的 phone 关闭时,该应用程序可以连接互联网。

每当我在 Android Wear 上打开一个套接字或尝试 HTTP 请求时,我总是得到一个 ConnectExceptionfailed to connect to http://foo.com(类似堆栈跟踪 here).所以我正在做一些与该应用程序不同的事情,我想了解那是什么。

上下文: 我正在进行概念验证,只想能够执行 HTTP 请求并打开套接字。我很想知道是否有任何方法可以做到这一点。即使它包括 root 手表和做一些 adb 魔术。

澄清一下:我了解数据层 API,但我仍然希望能够执行 HTTP 请求并打开套接字。

如果您的手表有Wifi且设置正确,那么您可以在手表与网络断开连接时通过手表进行网络通话phone;当您通过 BT 连接到 phone 时,wifi 将被禁用。启用后,您应该能够将其视为普通网络连接并进行网络呼叫。但请记住,如果您编写依赖于此的应用程序,您的应用程序在连接到 phone 时将无法运行,因此您需要处理这种情况并为您的应用程序提供替代方案以获得相同的效果数据(即使用 phone 的连接)。