Усилить экран входа iOS, не отображая элементы управления - PullRequest
0 голосов
/ 05 ноября 2018

Я работаю с AWS Amplify на iOS, чтобы использовать готовые экраны аутентификации пользователей, но, к сожалению, они не полностью рендерится, как показано ниже. Я использую код из учебника Amplify на https://docs.aws.amazon.com/aws-mobile/latest/developerguide/add-aws-mobile-user-sign-in.html. Я использую XCode 10, и я пробовал множество эмуляторов устройств на iOS 12 и v11.4, и все они демонстрировали одинаковое поведение. Кто-нибудь еще испытывал этот сценарий? Мой код включен ниже:

Podfile

platform :ios, '12.0'

target 'TestApp1' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for TestApp1
  pod 'AWSCore', '~> 2.6.33'
  pod 'AWSPinpoint', '~> 2.6.33'
  pod 'AWSMobileClient', '~> 2.6.33'
  pod 'AWSUserPoolsSignIn', '~> 2.6.33'
  pod 'AWSAuthUI', '~> 2.6.33'

end

AppDelegate.swift

import AWSPinpoint
import AWSMobileClient

...

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Create AWSMobileClient to connect with AWS
        return AWSMobileClient.sharedInstance().interceptApplication(application, didFinishLaunchingWithOptions: launchOptions)
    }

    func application(_ application: UIApplication, open url: URL,
                     sourceApplication: String?, annotation: Any) -> Bool {

        return AWSMobileClient.sharedInstance().interceptApplication(
            application, open: url,
            sourceApplication: sourceApplication,
            annotation: annotation)

    }

Просмотр кода, с которого я пытаюсь запустить экран входа в систему

import AWSCore
import AWSMobileClient
import AWSAuthCore
import AWSAuthUI

...

override func viewDidLoad() {
    super.viewDidLoad()
    showSignIn()
}

func showSignIn() {
    if !AWSSignInManager.sharedInstance().isLoggedIn {
        AWSAuthUIViewController
            .presentViewController(with: self.navigationController!,
                                   configuration: nil,
                                   completionHandler: { (provider: AWSSignInProvider, error: Error?) in
                                    if error != nil {
                                        print("Error occurred: \(String(describing: error))")
                                    } else {
                                        print("Identity provider: \(provider.identityProviderName)")
                                    }
            })
    }
}

Screen Print of Emulator

1 Ответ

0 голосов
/ 07 ноября 2018

На этот вопрос мне ответил на GitHub на https://github.com/aws/aws-sdk-ios/issues/1082 джентльмен по имени Рохандубал. Проблема заключалась в том, что в моем файле awsconfiguration.json не было информации о конфигурации для CognitoUserPool.

...