Загрузить большое изображение с сервера на Android

Я пытаюсь отобразить файл jpg с сервера в imageView. При попытке загрузить изображение меньшего размера (300х400) проблем нет. Но когда я пытаюсь загрузить полноразмерное изображение (2336x3504), изображение не загружается. Размер файла изображения всего 2 МБ. Я не получаю никаких ошибок в logcat и никаких исключений. Изображение просто не загружается. Я также пробовал использовать это:

BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 8;
Bitmap preview_bitmap=BitmapFactory.decodeStream(is,null,options);

Это не помогает загружать большие файлы, но изменяет размер меньшего изображения (как и предполагалось). Я добавил большое изображение в свои ресурсы и протестировал его, как если бы он был встроен в приложение, и он работал нормально, просто не будет работать на сервере. Я весь день работал над этим и могу ' Кажется, я не понимаю, как загружать эти большие картинки. Кто-нибудь может мне с этим помочь? Спасибо за любую информацию.

Здесь - ссылка, по которой я нашел приведенный выше код и поиграл с другими примерами, но все еще не заставил его работать.

РЕДАКТИРОВАТЬ:

Вот код, который я использую для загрузки изображения:

public static Bitmap getBitmapFromURL(String src) {
    Bitmap bmImg;
    URL myFileUrl = null;

    try {
        myFileUrl = new URL(src);

        HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
        conn.setDoInput(true);
        conn.connect();
        InputStream is = conn.getInputStream();

        BitmapFactory.Options options=new BitmapFactory.Options();
        options.inSampleSize = 16;

        bmImg = BitmapFactory.decodeStream(is, null, options);
        return bmImg;
    } catch (Exception e) {
        // TODO Auto-generated catch block
        Log.d("Error", e.toString());
        return null;
    }
}

Вот снимок экрана logcat (не могу понять, как правильно скопировать текст в eclipse) Я очистил журнал правильно прежде чем я нажму кнопку, чтобы загрузить изображение. Все, что вы видите, это то, что происходит, когда я нажимаю эту кнопку. Я удалил названия компаний и приложений (где вы видите «com.», Предположите, что это «com.mycompany.myapp».

Здесь - ссылка, по которой я нашел приведенный выше код и поиграл с другими примерами, но все еще не заставил его работать.

РЕДАКТИРОВАТЬ:

Вот код, который я использую для загрузки изображения:

public static Bitmap getBitmapFromURL(String src) {
    Bitmap bmImg;
    URL myFileUrl = null;

    try {
        myFileUrl = new URL(src);

        HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
        conn.setDoInput(true);
        conn.connect();
        InputStream is = conn.getInputStream();

        BitmapFactory.Options options=new BitmapFactory.Options();
        options.inSampleSize = 16;

        bmImg = BitmapFactory.decodeStream(is, null, options);
        return bmImg;
    } catch (Exception e) {
        // TODO Auto-generated catch block
        Log.d("Error", e.toString());
        return null;
    }
}

Вот скриншот logcat (не удалось понять, как правильно скопировать текст в eclipse) Я очистил журнал правильно прежде чем я нажму кнопку, чтобы загрузить изображение. Все, что вы видите, это то, что происходит, когда я нажимаю эту кнопку. Я удалил названия компаний и приложений (где вы видите «com.», Предположите, что это «com.mycompany.myapp».

Здесь - ссылка, по которой я нашел приведенный выше код и поиграл с другими примерами, но все еще не заставил его работать.

РЕДАКТИРОВАТЬ:

Вот код, который я использую для загрузки изображения:

public static Bitmap getBitmapFromURL(String src) {
    Bitmap bmImg;
    URL myFileUrl = null;

    try {
        myFileUrl = new URL(src);

        HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
        conn.setDoInput(true);
        conn.connect();
        InputStream is = conn.getInputStream();

        BitmapFactory.Options options=new BitmapFactory.Options();
        options.inSampleSize = 16;

        bmImg = BitmapFactory.decodeStream(is, null, options);
        return bmImg;
    } catch (Exception e) {
        // TODO Auto-generated catch block
        Log.d("Error", e.toString());
        return null;
    }
}

Вот скриншот logcat (не удалось понять, как правильно скопировать текст в eclipse) Я очистил журнал правильно прежде чем я нажму кнопку, чтобы загрузить изображение. Все, что вы видите, это то, что происходит, когда я нажимаю эту кнопку. Я удалил названия компаний и приложений (где вы видите «com.», Предположите, что это «com.mycompany.myapp». Все, что вы видите, это то, что происходит, когда я нажимаю эту кнопку. Я удалил названия компаний и приложений (где вы видите «com.», Предположите, что это «com.mycompany.myapp». Все, что вы видите, это то, что происходит, когда я нажимаю эту кнопку. Я удалил названия компаний и приложений (где вы видите «com.», Предположите, что это «com.mycompany.myapp». Logcat Screenshot

6
задан Community 23 May 2017 в 12:10
поделиться