aws文档对此非常困惑。按照这里的步骤https://docs.aws.amazon.com/aws-mobile/latest/developerguide/getting-started.html#ios-swift,我使用amplify创建了awsconfiguration.json,但它似乎是空的,它看起来像这样:
{
"UserAgent": "aws-amplify/cli",
"Version": "0.1.0",
"IdentityManager": {
"Default": {}
}
}
我将json拖入我的xcode项目的根目录,但当我运行该项目试图调用aws api(特别是rekognition)时,我收到此错误:
由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'服务配置是
nil
。在使用这种方法之前,你需要配置awsconfiguration.json
,Info.plist
或设置defaultServiceConfiguration
。
我不知道是不是因为json没有被正确读取,或者因为它是空的,或者是什么。整个设置似乎是一团糟。
我做了一个hacky解决方案,我在移动中心制作了一个新的应用程序,从那里下载了aws配置json,补充说
"Rekognition": {
"Default": {
"Region": "eu-west-1"
}
}
对于json,授予移动集线器在IAM仪表板中创建的角色的权限以使用重新认知,并且它有效。可怕的解决方案。
这也有助于解释我的很多问题:https://aws.amazon.com/blogs/mobile/how-amazon-cognito-keeps-mobile-app-users-data-safe/