Android CognitoCachingCredentialsProvider错误“在SharedReferences中找不到有效凭据”

Android CognitoCachingCredentialsProvider错误“在SharedReferences中找不到有效凭据”,android,amazon-cognito,Android,Amazon Cognito,我正在尝试实现Amazon提供的连接到DynamoDb的示例代码。第一步是初始化客户机,Amazon说要在constants类中定义凭据并使用它们: private void initClients() { CognitoCachingCredentialsProvider credentials = new CognitoCachingCredentialsProvider( context, Constants.ACCOUNT_ID,

我正在尝试实现Amazon提供的连接到DynamoDb的示例代码。第一步是初始化客户机,Amazon说要在constants类中定义凭据并使用它们:

private void initClients() {
    CognitoCachingCredentialsProvider credentials = new CognitoCachingCredentialsProvider(
            context,
            Constants.ACCOUNT_ID,
            Constants.IDENTITY_POOL_ID,
            Constants.UNAUTH_ROLE_ARN,
            null,
            Regions.US_EAST_1);
当我执行代码时,我得到以下信息: D/CognitoCachingCredentialsProvider﹕ 从SharedReferences加载凭据 D/CognitoCachingCredentialsProvider﹕ 在SharedReferences中找不到有效的凭据


然后,我创建了一个SharedReferences文件,并将凭据放在其中,但仍然收到相同的错误。有人知道CognitoCachingCredentialsProvider在本例中查找什么以及在哪里吗?

该消息不是错误,只是通知您还没有凭据。不要担心创建SharedReferences文件,它由Cognito内部处理。一旦您通过凭据提供程序执行任何需要它获取凭据的操作,它将自动在内部缓存这些凭据。

该消息不是错误,只是通知您还没有凭据。不要担心创建SharedReferences文件,它由Cognito内部处理。一旦您通过凭据提供程序执行任何需要它获取凭据的操作,它将自动在内部缓存这些凭据。

请检查您的清单文件。我使用s3,错过的时候也一样

 <service android:name="com.amazonaws.mobileconnectors.s3.transferutility.TransferService"
android:enabled="true" />

请检查您的清单文件。我使用s3,错过的时候也一样

 <service android:name="com.amazonaws.mobileconnectors.s3.transferutility.TransferService"
android:enabled="true" />

除了Viktor Burmaka给出的答案之外,我想指出亚马逊指南有点不完整

它说要添加行:

<service
  android:name="com.amazonaws.mobileconnectors.s3.transferutility.TransferService"
  android:enabled="true" />
我通过Android文档找到了这个:

上面说:

<service>
SYNTAX:
<service android:description="string resource"
         android:directBootAware=["true" | "false"]
         android:enabled=["true" | "false"]
         android:exported=["true" | "false"]
         android:icon="drawable resource"
         android:isolatedProcess=["true" | "false"]
         android:label="string resource"
         android:name="string"
         android:permission="string"
         android:process="string" >
    . . .
</service>
CONTAINED IN:
<application>
网络状态许可 Android Studio还要求我添加此权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

除了Viktor Burmaka给出的答案之外,我想指出亚马逊指南有点不完整

它说要添加行:

<service
  android:name="com.amazonaws.mobileconnectors.s3.transferutility.TransferService"
  android:enabled="true" />
我通过Android文档找到了这个:

上面说:

<service>
SYNTAX:
<service android:description="string resource"
         android:directBootAware=["true" | "false"]
         android:enabled=["true" | "false"]
         android:exported=["true" | "false"]
         android:icon="drawable resource"
         android:isolatedProcess=["true" | "false"]
         android:label="string resource"
         android:name="string"
         android:permission="string"
         android:process="string" >
    . . .
</service>
CONTAINED IN:
<application>
网络状态许可 Android Studio还要求我添加此权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

这是唯一的要求吗?我认为它有第三方的东西,你可能没有把它作为唯一的要求?我认为它有第三方的东西,你可能没有放在Yet谢谢。这很有帮助,谢谢。这很有帮助。