我无法找到有关Android Wear的任何文档,其中显示了如何创建一个应用程序,利用某些手表(如我的三星Galaxy Gear)现在可以通过wi-fi直接连接到互联网的事实不在身边。
我有几个应用程序生成访问REST服务的https请求,我想知道是否可以从连接到Wi-Fi(没有手机)的Wear应用程序直接调用这些应用程序。
类似的问题似乎没有回答这个问题:
Direct internet connection on Android Wear?
https://stackoverflow.com/questions/26062487/android-wi-fi-direct-persistent-connection
Android: Establish "Wi-Fi Direct" connection with networked devices
我在Wear模拟器上进行的测试拴在支持互联网的手机模拟器上:
java.net.UnknownHostException:无法解析主机" api.xxx.com":没有与主机名关联的地址
但当然手表模拟器上没有直接的Wi-Fi连接,因此我的下一步是尝试真正的手表和手机。
我怀疑Android Wear的数据API透明地处理这个问题,因此直接的http请求似乎不可能。
最好,提前感谢您的帮助。
答案 0 :(得分:1)
即使Android 5.1.1支持Wi-Fi功能。 Android Wear on Wi-Fi: Using a smartwatch without a phone nearby
您应该坚持使用Data Layer API,不能直接从watch发送http请求。从手机中获取互联网数据,然后将其传输到使用数据层API进行观看。
您可以看到此Does Android Wear support directly access the Internet?
答案 1 :(得分:1)
从最后一次更新中可以使用android穿上来通过wifi进行http请求。您甚至可以将蓝牙耳机连接到它以与某些流媒体应用程序一起使用。
虽然在wifi上,如果你的手机也连接到互联网(不需要是相同的wifi,甚至可以是3g),它的行为方式与蓝牙连接我们的手机时的行为方式相同,但有自己的互联网接入。
这并不意味着应用会改变他们的行为,因为他们中的大多数都会被编码以通过您的手机发出请求,但如果您有一个应用程序直接发出网络请求,它会从您的手表发送它们而无需建议或需要您的电话。
如何在Android上进行网络请求
只需使用您在普通Android移动应用程序上使用的相同网络请求库,例如volley,retrofit,okhttp。代码完全相同,顺便说一句,任何Android Mobile库也可以与Android Wear配合使用。