可以通过以下方式解决AWS Cognito Android SDK未遵守超时设置的问题:
首先,确保你已经在项目的build.gradle文件中添加了AWS Cognito依赖项:
dependencies {
implementation 'com.amazonaws:aws-android-sdk-cognito:2.16.4'
}
然后,在你的代码中,使用AmazonCognitoIdentityProviderClient类的实例来设置超时时间和连接时间:
import com.amazonaws.ClientConfiguration;
import com.amazonaws.mobileconnectors.cognitoauth.util.ClientConstants;
import com.amazonaws.services.cognitoidentityprovider.AmazonCognitoIdentityProviderClient;
// 创建AmazonCognitoIdentityProviderClient实例
AmazonCognitoIdentityProviderClient client = new AmazonCognitoIdentityProviderClient();
// 设置超时时间
ClientConfiguration clientConfig = new ClientConfiguration();
clientConfig.setConnectionTimeout(ClientConstants.CONNECTION_TIMEOUT);
clientConfig.setSocketTimeout(ClientConstants.SOCKET_TIMEOUT);
client.setConfiguration(clientConfig);
在上述代码中,我们使用ClientConfiguration类来设置连接和套接字的超时时间。ClientConstants.CONNECTION_TIMEOUT和ClientConstants.SOCKET_TIMEOUT是Cognito Android SDK提供的默认超时时间常量。
这样,你的AWS Cognito Android SDK就会遵守超时设置了。