Cocoapods support is deprecated and will be removed on June 1, 2023
The Microsoft Azure IoT C SDK is available as five Objective-C CocoaPods:
- AzureIoTUtility contains the Azure IoT C Shared Utility library
- AzureIoTuAmqp contains the Azure IoT AMQP library
- AzureIoTuMqtt contains the Azure IoT MQTT library
- AzureIoTHubClient contains the Azure IoT Hub Client
- AzureIoTHubServiceClient contains the Azure IoT Hub Service Client
Samples in Swift for iOS are here.
iOS Limitations
- Authentication is limited to SAS keys on iOS. No certificate-based authentication is officially supported.
- The Device Provisioning Client is not supported on iOS. Only the Azure IoT Hub device client is supported.
For a more complete iOS experience including the two missing features above, please see our sample native Swift library built on top of the Embedded C SDK.
Using Objective-C libraries within another Objective-C app or library requires setting up header search paths just like typical C libraries require
The header search path values you'll need to set for the Azure IoT CocoaPods are:
${PODS_ROOT}/AzureIoTHubClient/inc/
${PODS_ROOT}/AzureIoTHubServiceClient/inc/
${PODS_ROOT}/AzureIoTUtility/inc/
${PODS_ROOT}/AzureIoTuMqtt/inc/
${PODS_ROOT}/AzureIoTuAmqp/inc/
Swift apps and libraries can use Azure IoT CocoaPods with standard Swift imports:
import AzureIoTHubClient
import AzureIoTHubServiceClient
import AzureIoTuAmqp
import AzureIoTuMqtt
import AzureIoTUtility