Я хочу загрузить изображения в мой ведро s3. Я пробовал различные решения для загрузки файлов, таких как this tutorial, но я всегда получаю ошибку как Ssl исключения:Загрузка файла Android в Amazon S3
Unable to execute HTTP request: Write error: ssl=0x55a53d5240: I/O error during system call, Connection reset by peer
Я нашел один комментарий по поводу этого исключения комментария, если ваша сеть плохо вы можете получить по ошибке. Но моя сеть хороша.
Мой код ниже:
private void uploadImage() {
// Initialize the Amazon Cognito credentials provider
CognitoCachingCredentialsProvider credentialsProvider = new CognitoCachingCredentialsProvider(
getContext().getApplicationContext(),
"us-west-2:************", // Identity Pool ID
Regions.US_WEST_2 // Region
);
ClientConfiguration configuration = new ClientConfiguration();
configuration.setConnectionTimeout(50000);
configuration.setSocketTimeout(300000);
final AmazonS3 s3 = new AmazonS3Client(credentialsProvider, configuration);
TransferUtility transferUtility = new TransferUtility(s3, getContext().getApplicationContext());
LocalImage image = mAddImageAdapter.getLocalImage(0);
final File mFile = new File(image.getImagePath());
long len = mFile.length();
transferUtility.upload("2y1s-images", mFile.getName(), mFile).setTransferListener(new TransferListener() {
@Override
public void onStateChanged(int id, TransferState state) {
Log.i(TAG, "image upload state: " + state.name());
}
@Override
public void onProgressChanged(int id, long bytesCurrent, long bytesTotal) {
Log.e(TAG, "image upload percentage: " + bytesCurrent + " -" + bytesTotal);
}
@Override
public void onError(int id, Exception ex) {
Log.e(TAG, "image upload error: " + ex.getMessage());
}
});
}
просто проверка - не забыли ли вы добавить разрешение Интернета в манифест? – SteelBytes
да у меня есть интернет, разрешение на чтение и запись – gokhan
какая версия aws sdk вы используете? (последний?) – SteelBytes