Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon cognito 当错误的用户登录时,ios应用程序正在崩溃,并且没有显示日志。但在安卓系统中,它的工作并没有崩溃。为什么?_Amazon Cognito_Aws Amplify_Flutter Dependencies - Fatal编程技术网

Amazon cognito 当错误的用户登录时,ios应用程序正在崩溃,并且没有显示日志。但在安卓系统中,它的工作并没有崩溃。为什么?

Amazon cognito 当错误的用户登录时,ios应用程序正在崩溃,并且没有显示日志。但在安卓系统中,它的工作并没有崩溃。为什么?,amazon-cognito,aws-amplify,flutter-dependencies,Amazon Cognito,Aws Amplify,Flutter Dependencies,当错误的用户登录时,ios应用程序正在崩溃,并且没有显示日志。但在安卓系统中,它的工作并没有崩溃。为什么? Thread 26: Fatal error: Unexpectedly found nil while unwrapping an Optional value Fatal error: Unexpectedly found nil while unwrapping an Optional value: file /Users/user/FlutterHome/flutter/.p

当错误的用户登录时,ios应用程序正在崩溃,并且没有显示日志。但在安卓系统中,它的工作并没有崩溃。为什么?

  Thread 26: Fatal error: Unexpectedly found nil while unwrapping an Optional value

Fatal error: Unexpectedly found nil while unwrapping an Optional value: file /Users/user/FlutterHome/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_aws_amplify_cognito-1.0.0+7/ios/Classes/SwiftFlutterAwsAmplifyCognito.swift, line 275

未来登录(
{字符串用户名,
字符串密码,
GlobalKey GlobalKey})异步{
返回awsamplifycognito.signIn(用户名、密码)
.然后((SignInResult结果){
debugPrint('---------------------------${result}');
开关(result.signInState){
case SignInState.SMS_MFA:
//托多:处理这个案子。
打破
case SignInState.PASSWORD\u验证器:
//托多:处理这个案子。
打破
case SignInState.CUSTOM\u挑战:
//托多:处理这个案子。
打破
case SignInState.DEVICE\u SRP\u AUTH:
//托多:处理这个案子。
打破
case SignInState.DEVICE\u PASSWORD\u验证器:
//托多:处理这个案子。
打破
案例签名instate.ADMIN\u NO\u SRP\u AUTH:
//托多:处理这个案子。
打破
case SignInState.NEW\u所需密码:
//托多:处理这个案子。
打破
case SignInState.DONE:
打破
case SignInState.UNKNOWN:
//托多:处理这个案子。
打破
case SignInState.ERROR:
//托多:处理这个案子。
打破
}
返回result.code详细信息;
}).catchError((错误){
如果(error.code==“error”){
globalKey.currentState.showSnackBar(SnackBar(
背景颜色:Colors.red,
内容:文本(本地化)(
Locale.fromSubtags(语言代码:AppPreferences().language))
.errorIncorrectEmailPassword),
));
}
});
}

也有同样的问题。代码中只缺少一个返回

static func signIn(result: @escaping FlutterResult, username: String, password: String) {
    AWSMobileClient.default().signIn(username: username, password: password){(signinResult, error) in
        if (error != nil) {
            DispatchQueue.main.async {
                result(FlutterError(code: "Error", message: "Error signing in", details: error?.localizedDescription))
            }
            return // this return was missing!!!
        }
仅供参考:如果您使用Xcode运行应用程序,调试器会将您指向错误


PS:每个错误中都缺少返回值,因此应用程序也可能在其他函数调用中崩溃,例如,如果您试图在不记录日志的情况下获取令牌。

我知道解决方案是什么?只需从GitHub分叉或克隆它,并在本地进行修复,直到他们在master上修复它。
static func signIn(result: @escaping FlutterResult, username: String, password: String) {
    AWSMobileClient.default().signIn(username: username, password: password){(signinResult, error) in
        if (error != nil) {
            DispatchQueue.main.async {
                result(FlutterError(code: "Error", message: "Error signing in", details: error?.localizedDescription))
            }
            return // this return was missing!!!
        }