The AWS Mobile SDK for iOS can be installed via Swift Package Manager, but you will have to import the target dependencies for each SDK you want to use.
Most SDKs only require you to import the SDK itself, and AWSCore:
However, some SDKs rely on other libraries in the SDK. The full list is below
SDK | Dependencies | Notes |
---|---|---|
AWSAPIGateway | AWSCore | |
AWSAppleSignIn | AWSCore, AWSAuthCore | Only needed if you are using Sign In With Apple as an Identity Provider for Cognito Federated Identities (Cognito Identity Pools) |
AWSAuth | Deprecated. Do not use this SDK. | |
AWSAuthCore | AWSCore | |
AWSAuthUI | AWSCore, AWSAuthCore | Used for native drop-in Auth UI |
AWSAutoScaling | AWSCore | |
AWSCloudWatch | AWSCore | |
AWSCognitoAuth | AWSCore, AWSCognitoIdentityProviderASF | Used for Cognito HostedUI |
AWSCognitoIdentityProvider | AWSCore, AWSCognitoIdentityProviderASF | |
AWSCognitoIdentityProviderASF | ||
AWSComprehend | AWSCore | |
AWSConnect | AWSCore | |
AWSConnectParticipant | AWSCore | |
AWSCore | ||
AWSDynamoDB | AWSCore | |
AWSEC2 | AWSCore | |
AWSElasticLoadBalancing | AWSCore | |
AWSFacebookSignIn | AWSCore, AWSAuthCore, FBSDKLoginKit from Facebook SDK | Only needed if you are using Facebook as an Identity Provider for Cognito Federated Identities (Cognito Identity Pools). |
AWSGoogleSignIn | AWSCore, AWSAuthCore | Only needed if you are using Google as an Identity Provider for Cognito Federated Identities (Cognito Identity Pools) |
AWSIoT | AWSCore | |
AWSKMS | AWSCore | |
AWSKinesis | AWSCore | |
AWSKinesisVideo | AWSCore | |
AWSKinesisVideoArchivedMedia | AWSCore | |
AWSKinesisVideoSignaling | AWSCore | |
AWSLambda | AWSCore | |
AWSLex | AWSCore | arm64 architecture not supported due to an incompatibility with a packaged binary |
AWSLocationXCF | AWSCore | See XCFramework support note below |
AWSLogs | AWSCore | |
AWSMachineLearning | AWSCore | |
AWSMobileClientXCF | AWSCore, AWSAuthCore, AWSCognitoIdentityProvider, AWSCognitoIdentityProviderASF | Add additional auth SDKs (e.g., AWSUserPoolsSignIn for native User Pools sign in, or AWSCognitoAuth for HostedUI) according to your use case. Also see XCFramework support note below. |
AWSPinpoint | AWSCore | |
AWSPolly | AWSCore | |
AWSRekognition | AWSCore | |
AWSS3 | AWSCore | |
AWSSES | AWSCore | |
AWSSNS | AWSCore | |
AWSSQS | AWSCore | |
AWSSageMakerRuntime | AWSCore | |
AWSSimpleDB | AWSCore | |
AWSTextract | AWSCore | |
AWSTranscribe | AWSCore | |
AWSTranscribeStreaming | AWSCore | |
AWSTranslate | AWSCore | |
AWSUserPoolsSignIn | AWSCore, AWSAuthCore, AWSCognitoIdentityProvider, AWSCognitoIdentityProviderASF |
Some modules (AWSLocation, AWSMobileClient) are named with an XCF
suffix to work around a Swift issue. AWSMobileClient
is named as AWSMobileClientXCF
and AWSLocation
is named as AWSLocationXCF
. To use the AWSMobileClient
or AWSLocation
SDKs, import them as:
import AWSMobileClientXCF
import AWSLocationXCF
and use it your app code without the XCF
suffix.
AWSMobileClient.default().initialize()
let locationClient = AWSLocation.default()