mozyのかきおき

mozyの読書感想文や思考置き場

AWS Cognito のSwiftサンプルコードに間違いが存在するようだ【フィードバック送信済】

f:id:mozy_ok:20181118020945j:plain

おきた事

AWS Cognito を使って、iOSアプリの認証周りの作成をしていた際にサンプルコードのミスに気が付き、些細な事だったからか解決策が共有されていなさそうなのでメモ。

解決策

cognito のサンプルコード画面にて プラットフォームをSwiftを選択しても、 サンプルコードのステップ1は Objective-Cのコードとなっているため、Swiftでは、以下の一行のみでいいと思われる。

import AWSCognito

また、認証情報プロバイダーの初期化の設定の最後の一行が、

AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration

から、以下のように更新されていると思われる。

AWSServiceManager.default().defaultServiceConfiguration = configuration

該当部分を抜き出してみる

f:id:mozy_ok:20181118020744p:plain

AWS 認証情報の取得
ステップ 1: Cognito ヘッダーファイルを Objective-C ブリッジングヘッダーにインポートする

#import <AWSCore/AWSCore.h>
#import <AWSCognito/AWSCognito.h>
次に、認証情報プロバイダーを初期化します。

// Amazon Cognito 認証情報プロバイダーを初期化します

let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USEast2,
   identityPoolId:"us-east-2:IDプールのID")

let configuration = AWSServiceConfiguration(region:.USEast2, credentialsProvider:credentialsProvider)

AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration