无法从Android SDK将目标温度设置为Nest Thermostat

时间:2016-02-20 13:38:57

标签: android nest-api

我正在编写一个Android应用程序来控制Nest恒温器。我能够很好地连接到它,我可以读取正确的目标温度(在恒温器上转动nob更新我的TextView)。

但是,当我尝试像这样写出目标温度时,没有任何反应:

String thermostatID = mThermostat.getDeviceId();
mNest.thermostats.setTargetTemperatureF(thermostatID, 70);

我尝试先设置HVAC模式,以防我需要,但这也不起作用:

String thermostatID = mThermostat.getDeviceId();
mNest.thermostats.setHVACMode(thermostatID, "cool");
mNest.thermostats.setTargetTemperatureF(thermostatID, 70);

Textview闪烁70秒,但随后又回击到77,这是实际恒温器设定的目标温度。这是setTargetTemperatureF的SDK代码的问题,还是我在这里遗漏了一些简单的内容?

2 个答案:

答案 0 :(得分:1)

Nest恒温器的权限在Nest网站上设置。访问https://developer.nest.com/products并登录。您将获得一份产品列表,您只需选择一个并向下滚动到权限。

请注意,更改权限后,您的移动(或各种平台)应用程序将需要重新运行身份验证才能进行此更改。

答案 1 :(得分:0)

尝试按如下方式修改代码,然后设置目标温度。

mNest.setTargetTemperatureF(thermostatID, 70L, null);