无法读取S3TransferUtility,请检查您的设置或awsconfiguration.json文件

Sye*_*Oan 6 android amazon-s3

我是使用AWS开发工具包(SDK)进行视频传输的新手。但是我收到错误消息“无法读取S3TransferUtility,请检查您的setup或awsconfiguration.json文件”。这是我的代码。

在我的清单文件中

<service android:name="com.amazonaws.mobileconnectors.s3.transferutility.TransferService" android:enabled="true" />
Run Code Online (Sandbox Code Playgroud)

在我的oncreate中,我正在这样做。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_upload_post);

    AWSMobileClient.getInstance().initialize(this).execute();

transferUtility =
                TransferUtility.builder()
                        .context(this)
                        .awsConfiguration(AWSMobileClient.getInstance().getConfiguration())
                        .s3Client(new AmazonS3Client(AWSMobileClient.getInstance().getCredentialsProvider()))
                        .build();

}
Run Code Online (Sandbox Code Playgroud)

.build例外。我调试了代码,它拾取了位于文件夹中的配置文件,这完全是因为我可以在调试中看到数据,但是我认为transferutility.TransferService没有运行。有人可以帮忙吗?谢谢

Avi*_*ger 7

出于某种原因,自动生成的“awsconfiguration”文件不包括名为“ S3TransferUtility ”的最重要的部分。所以你必须手动添加它。您的“awsconfiguration.json”文件应如下所示:

{
  "UserAgent": "MobileHub/1.0",
  "Version": "1.0",
  "CredentialsProvider": {
"CognitoIdentity": {
  "Default": {
    "PoolId": "us-east-1:<RANDOM-GUID>",
    "Region": "us-east-1"
  }
}
  },
  "IdentityManager": {
    "Default": {}
  },
  "PinpointAnalytics": {
    "Default": {
      "AppId": "<UNIQUE ID>",
      "Region": "us-east-1"
    }
  },
  "PinpointTargeting": {
    "Default": {
      "Region": "us-east-1"
    }
  },
  "S3TransferUtility": {
    "Default": {
      "Bucket": "<YOUR BUCKET NAME>",
      "Region": "us-east-1"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)


Gow*_*n M 6

在我的awsconfiguration.json 我添加以下行然后它开始工作

  "S3TransferUtility": {
    "Default": {
      "Bucket": "<YOUR BUCKET NAME>",
      "Region": "us-east-1"
    }
  }
Run Code Online (Sandbox Code Playgroud)


小智 5

在您的项目中添加 awsconfiguration.json 并更改池 ID 和区域属性。您可以在此处阅读更多相关信息。