我在使用 this sample 注册和登录 Cognito 以在 Android Studio 中使用我的应用程序时遇到困难。当我尝试通过模拟器登录时,应用程序运行了几秒钟,然后显示一条错误消息:“无法执行 HTTP 请求:无法解析主机 'cognito-idp.us-east-1.amazonaws.com' :没有与主机名关联的地址”。此错误是控制台中出现的唯一错误。我见过类似的问题并尝试了解决方案,例如检查以确保我的应用程序具有 android.permission.INTERNET
和 android.permission.ACCESS_NETWORK_STATE
权限,但错误仍然存在。看来也不是网络问题。我已更新到最新版本的 Android SDK 以及 AWS SDK,但问题仍然存在。
我目前设置了一个 Cognito 用户池,可以正常登录我的应用程序的 iOS 版本。按照示例代码的自述文件中的说明,我向现有用户池添加了一个应用程序,然后将新生成的应用程序客户端 ID 和应用程序客户端 key 复制并粘贴到 AppHelper.java 中的 clientId
和分别是clientSecret
。我还将 userPoolId
设置为 Cognito 控制台“池详细信息”下为我的用户池列出的 ID,并将 cognitoRegion
设置为美国东部,因为这是我的用户所在的区域水池。我注意到我不需要像 iOS 版本那样设置池名称,所以我想知道这是否是我需要做的事情。
很抱歉,如果这算作重复,但我想发布一个问题,其中包含我遇到的确切错误消息以及我采取的步骤,我想知道是否有人设法使这个特定示例正常工作以及我应该做什么做。
最佳答案
问题已经解决,但不幸的是我不太确定是什么解决了这个问题,因为我没有更改代码中的任何内容。我所做的只是安装更新,因此任何有类似问题的人都应该确保示例中使用的所有 SDK 以及模拟器都得到正确更新。还值得注意的是,我使用的网络与之前的测试不同,因此最终可能是网络问题。
关于java - Android AWS Cognito : unable to resolve host,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40621643/