我是使用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没有运行。有人可以帮忙吗?谢谢
出于某种原因,自动生成的“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)
在我的awsconfiguration.json 我添加以下几行然后它开始工作
"S3TransferUtility": {
"Default": {
"Bucket": "<YOUR BUCKET NAME>",
"Region": "us-east-1"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3344 次 |
| 最近记录: |