从Android移动应用发送消息到Azure IoT Hub

时间:2017-06-19 15:14:55

标签: java android azure iot azure-iot-hub

对于IoT项目,我们需要将消息从移动应用程序(iOS和Android)发送到Azure IoT Hub。我们能够使用MQTT库作为设备进行连接。但是,设备模拟器也作为设备连接,并且由于两者都使用相同的设备ID,因此当两者同时连接到IoT Hub时,现有连接将被丢弃。

我们意识到我们需要将移动应用程序作为服务(而不是设备)连接起来,并且有些研究显示我们需要使用以下库。

https://github.com/Azure/azure-iot-sdk-java

https://github.com/Azure/azure-iot-sdk-java/blob/master/service/iot-service-samples/service-client-sample/src/main/java/samples/com/microsoft/azure/sdk/iot/ServiceClientSample.java

但是,这个java示例使用了许多特定于java的实现,并且Android不支持这些实现。

有没有人遇到同样的问题?

  1. 我们可以使用哪个库来实现Android移动应用程序?
  2. 我们可以使用哪个库来实现以上iOS移动应用程序?
  3. 如果有任何备用解决方案,请与我们联系。

2 个答案:

答案 0 :(得分:4)

您可以使用REST API向Azure IoT中心发送D2C消息。以下屏幕截图显示了此调用的示例。请注意,此请求不需要库。

Send D2C Message

  • 您的方案的另一个解决方案是使用Azure功能作为Azure IoT Hub的预处理器,请参阅以下示例:

AzureFunction

由于 罗马

答案 1 :(得分:1)

正如有关您的方案的其他解决方案的其他内容。根据我的理解和我的经验,我认为您可以尝试创建一个App服务,例如在client& backend或WebApps等,用于从Android应用程序接收包含自定义json属性的有效负载,并使用Azure IoTHub SDK for NodeJS或Java将有效负载消息转发到IoTHub。