无法通过 Android SDK 将目标温度设置为 Nest Thermostat
Unable to set target temperature to Nest Thermostat from Android SDK
我正在编写一个 Android 应用程序来控制 Nest 恒温器。我能够很好地连接到它并且我可以读取正确的目标温度(转动恒温器上的旋钮更新我的 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 代码的问题,还是我在这里遗漏了一些简单的东西?
Nest 恒温器的权限已在 Nest 网站上设置。访问 https://developer.nest.com/products 并登录。您将获得一份产品列表,您需要做的就是 select 一个并向下滚动到权限。
请注意,更改权限后,您的移动(或各种平台)应用程序需要重新运行身份验证才能使此更改生效。
尝试修改你的代码如下,然后你可以设置目标温度。
mNest.setTargetTemperatureF(thermostatID, 70L, null);
我正在编写一个 Android 应用程序来控制 Nest 恒温器。我能够很好地连接到它并且我可以读取正确的目标温度(转动恒温器上的旋钮更新我的 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 代码的问题,还是我在这里遗漏了一些简单的东西?
Nest 恒温器的权限已在 Nest 网站上设置。访问 https://developer.nest.com/products 并登录。您将获得一份产品列表,您需要做的就是 select 一个并向下滚动到权限。
请注意,更改权限后,您的移动(或各种平台)应用程序需要重新运行身份验证才能使此更改生效。
尝试修改你的代码如下,然后你可以设置目标温度。
mNest.setTargetTemperatureF(thermostatID, 70L, null);