我找不到任何关于Android Wear的文档,它们展示了如何创建一个应用程序,利用一些手表(如我的三星Galaxy Gear)现在可以通过wi-fi直接连接到互联网的事实.
我有几个应用程序生成访问REST服务的https请求,我想知道是否可以从连接到Wi-Fi(没有手机)的Wear应用程序直接调用这些应用程序.
类似的问题似乎没有回答这个问题:
Android:与联网设备建立"Wi-Fi Direct"连接
我在Wear模拟器上进行的测试拴在支持互联网的手机模拟器上:
java.net.UnknownHostException:无法解析主机"api.xxx.com":没有与主机名关联的地址
但当然手表模拟器上没有直接的Wi-Fi连接,所以我的下一步是尝试真正的手表和手机.
我怀疑Android Wear的数据API是否透明地处理这一点,因此直接的http请求似乎是不可能的.
最好的,提前感谢您的帮助.
我正在制作一个简单的Android Wear应用来控制我的恒温器,我正在用Volley发送POST请求来控制它们.Android Wear模拟器中的一切都运行良好(请求有效),但是,当应用程序在我的Moto 360上加载时,凌空请求被调用,但总是超时.
为什么我的截击请求会在我的手表上失败但是在模拟器上工作?其他应用程序的请求在我的手表上成功(例如,内置天气应用程序可以在大约3秒内加载天气数据).而且,最奇怪的部分:我的应用程序在我的手表上工作(成功发出截击请求),并且,在我从Android Studio安装到我的手表大约一天之后,它突然停止加载数据,原因并非明显.
到目前为止我尝试过的:
manifest.xml.这是我的代码(来自我的主视图的适配器):
public void refreshThermostatsRecyclerView(RequestQueue queue) {
String url = "https://mobile.skyport.io:9090/login"; // login call to the thermostats server Skyport
Log.w("myApp", "Starting /login call to Skyport"); // this gets called on simulator and watch
// Request a string response from the provided URL.
StringRequest stringRequest = new StringRequest(Request.Method.POST, url,
Response.Listener<String>() {
@Override
public void onResponse(String response) {
// …Run Code Online (Sandbox Code Playgroud) 作为一名Android服装开发者,我们可以通过http请求直接访问网络吗?在我的情况下,我想发送一个http请求来获取Yahoo Financial API库存数据,但它总是失败,
相同条件在stackoverflow 中,Android Wear是否支持HttpURLConnection - 在Android Wear上获取EOFException 直接互联网连接?
但在最新的Android 5.1.1更新中显示"Wifi支持功能" http://officialandroid.blogspot.tw/2015/04/android-wear-wear-what-you-want-get.html
这意味着Android Wear中的Wifi功能仅用于手机和佩戴之间的"同步数据",或者我们可以在wifi上做更多的事情?
谢谢
我正在开发我的第一个android wear应用程序,我正在向一个请求api,问题是我没有互联网连接.我如何启用互联网连接或类似的东西?
到目前为止,我所尝试的是启用蓝牙连接,但每次我点击那里我得到以下错误不幸的是,设置已停止.
任何想法如何解决它?
注意:下面是我的虚拟机详细信息:
编辑 为了确保互联网连接不起作用,我尝试了以下代码:
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
if (ni == null) {
// There are no active networks.
return false;
} else
return true;
Run Code Online (Sandbox Code Playgroud)