現在、aws amplifyの勉強中でappsyncを使用したiosアプリの開発をしています。
appsyncの初期設定のところで以下のコードがエラーを起こしてしまいます。
awsconfiguration.jsonのインポートがうまくいってないのかと思い再インポートしなおしてもなおりません。
アドバイス頂けたらと幸いです。
AWSAppSyncClientInfo()のところでエラーが起きています。
エラー内容:
Type of expression is ambiguous without more context
AppDelegate.swift
swift
1 2import UIKit 3import AWSMobileClient 4import AWSS3 5import AWSAppSync 6 7@UIApplicationMain 8class AppDelegate: UIResponder, UIApplicationDelegate { 9 10 var window: UIWindow? 11 var appSyncClient: AWSAppSyncClient? 12 13 class MyCognitoUserPoolsAuthProvider : AWSCognitoUserPoolsAuthProviderAsync { 14 public func getLatestAuthToken(_ callback: @escaping (String?, Error?) -> Void){ 15 AWSMobileClient.sharedInstance().getTokens { (tokens, error) in 16 if error != nil { 17 callback(nil, error) 18 } else { 19 callback(tokens?.idToken?.tokenString, nil) 20 } 21 } 22 } 23 } 24 25 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { 26 // Override point for customization after application launch. 27 let databaseURL = URL(fileURLWithPath:NSTemporaryDirectory()).appendingPathComponent("database_name") 28 29 do { 30 // Initialize the AWS AppSync configuration 31 32 let appSyncConfig = try AWSAppSyncClientConfiguration(appSyncClientInfo: **AWSAppSyncClientInfo()**, 33 userPoolsAuthProvider: { 34 class MyCognitoUserPoolsAuthProvider : AWSCognitoUserPoolsAuthProviderAsync { 35 func getLatestAuthToken(_ callback: @escaping (String?, Error?) -> Void) { 36 AWSMobileClient.sharedInstance().getTokens { (tokens, error) in 37 if error != nil { 38 callback(nil, error) 39 } else { 40 callback(tokens?.idToken?.tokenString, nil) 41 } 42 } 43 } 44 } 45 return MyCognitoUserPoolsAuthProvider()}(), 46 databaseURL:databaseURL) 47 48 // Initialize the AWS AppSync client 49 appSyncClient = try AWSAppSyncClient(appSyncConfig: appSyncConfig) 50 } catch { 51 print("Error initializing appsync client. (error)") 52 } 53 return true 54 }
回答1件
あなたの回答
tips
プレビュー