Skip to main content
Azure
  • 1 min read

Azure IoT Hub SDK officially provides native iOS support

Whether your iOS project is written in Swift or Objective-C, you can leverage our device SDK and service SDK directly and begin turning your iOS device into an IoT device!

We recently released a port of our Azure IoT Hub C SDK for iOS platform. Whether your iOS project is written in Swift or Objective-C, you can leverage our device SDK and service SDK directly and begin turning your iOS device into an IoT device! Our libraries are available on CocoaPod, a popular package manager for iOS, and the source code is available on GitHub.

iOS devices are traditionally not viewed as IoT devices, but recently, they are getting traction in the IoT space. Here are some of the interesting scenarios we gathered from our industry customers during the preview phase:

  • iOS device as the gateway for leaf devices or sensors on the factory floor.
  • iOS device in a meeting room, which acts as an end IoT device to send and receive messages from Azure IoT Hub.
  • iOS device to view the visualization of IoT telemetry.
  • iOS device to manage IoT Hub operations.

So, what is in the box? If you have interacted with our Azure IoT Hub C SDK before, this would be familiar to you! Our C SDK is written in C99 for maximum portability to various platforms. The porting process involves writing a thin adoption layer for the platform-specific components. You can find a thin adoption layer for iOS on GitHub. All the features in the C SDK can be leveraged on iOS platform directly, including the Azure IoT Hub features we support and SDK specific features such as retry policy for network reliability. In addition, iOS platform is now part of our officially supported platforms which are tested with every release. Our test suite includes unit tests, integration tests, and end-to-end tests, all available on GitHub.  Azure IoT Hub Device Provisioning Service SDKs will also be available on iOS soon.

Learn more about how to turn your iOS device into an IoT device: