Не удалось загрузить файл мультимедиа в приложении Android, отправленном из веб-приложения - PullRequest
0 голосов
/ 28 августа 2018

Я работаю над приложением чата, у нас есть два клиента, один из которых является Android, а другой - веб, я загружаю медиа-файлы на S3-Amazon , когда отправляю медиа-файл из веб-приложения на клиент Android Файл мультимедиа не загружен, показывая ошибку, как показано ниже. Media Download interrupted : com.amazonaws.services.s3.model.AmazonS3Exception: The specified key does not exist. (Service: Amazon S3; Status Code: 404; Error Code: NoSuchKey; Request ID: XXXXXXXXX), S3 Extended Request ID:XXXXXXXXXXX

private void beginDownload(String key, String bucket, String 
 mediaType,final 
DownloadFileFromAwsCompletionListener listener) {
    // Location to download files from S3 to. You can choose any 
accessible
    // file.

    String localFilePath = Strings.EMPTY;
    try {
        //if (!isThumb) {
        localFilePath = MediaHelper.createMediaFile(mediaType, false, false, key);
       /* } else {
            localFilePath = MediaHelper.createMediaFile(mediaType, false, true);
        }*/
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (!StringHelper.isNullOrEmpty(localFilePath)) {
        File file = new File(localFilePath);

        // Initiate the download
        TransferObserver observer = mTransferUtility.download(bucket, key, file);
        final String finalLocalFilePath = localFilePath;
        observer.setTransferListener(new TransferListener() {
            @Override
            public void onStateChanged(int id, TransferState state) {

                //String bucketPath = UrlStrings.XmppStrings.
                if (state.equals(TransferState.COMPLETED)) {
                    listener.onDownloadSuccess(finalLocalFilePath);
                }

            }

            @Override
            public void onProgressChanged(int id, long bytesCurrent, long bytesTotal) {

            }

            @Override
            public void onError(int id, Exception ex) {
                listener.onDatabaseError(new AwsFailure(ex));
            }
        });
    } else {
        getLogger().log(Strings.TAG, "xmpp beginDownload(): file could not be created.");
    }
}

1 Ответ

0 голосов
/ 29 августа 2018

Вам необходимо перепроверить загруженный путь, по которому вы используете для загрузки медиа-файлов из S3. Я думаю, что вы используете другой путь для загрузки медиа-файлов, поэтому вы получаете сообщение об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...