2015-06-24 2 views
0

Я пытаюсь разобрать изображения ... большие изображения с url!Разбор больших изображений с url JSON

  // Decodes image and scales it to reduce memory consumption 
private Bitmap decodeFile(File f) { 
    try { 
     // Decode image size 
     BitmapFactory.Options o = new BitmapFactory.Options(); 
     o.inJustDecodeBounds = true; 
     FileInputStream stream1 = new FileInputStream(f); 
     BitmapFactory.decodeStream(stream1, null, o); 
     stream1.close(); 
     // Find the correct scale value. It should be the power of 2. 
     // Recommended Size 512 
     final int REQUIRED_SIZE = 70; 
     int width_tmp = o.outWidth, height_tmp = o.outHeight; 
     int scale = 1; 
     while (true) { 
      if (width_tmp/2 < REQUIRED_SIZE 
        || height_tmp/2 < REQUIRED_SIZE) 
       break; 
      width_tmp /= 2; 
      height_tmp /= 2; 
      scale *= 2; 
     } 

     // Decode with inSampleSize 
     BitmapFactory.Options o2 = new BitmapFactory.Options(); 
     o2.inSampleSize = scale; 
     FileInputStream stream2 = new FileInputStream(f); 
     Bitmap bitmap = BitmapFactory.decodeStream(stream2, null, o2); 

     stream2.close(); 
     return bitmap; 
    } catch (FileNotFoundException e) { 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    return null; 
} 

, когда я анализирую маленькие изображения размера он работает, но когда я использую его в один большой он выходит из строя и растровый равна нулю и дает мне эту ошибку

ReadStreamToBuffer: Qmage поток чтения ошибка !! Требуемая длиной 12 байт, а красные 0 байт isQmage: вход SkStreamRewindable длина меньше Qmage минимального размера: 0

+0

использование библиотека picasso для загрузки большого изображения –

+0

Там много библиотек для загрузки изображения с url, пожалуйста, ознакомьтесь с популярностью: http://square.github.io/pica sso/и https://github.com/nostra13/Android-Universal-Image-Loader –

+0

Используйте библиотеку Picasso или Glide (http://square.github.io/picasso/) – NullByte

ответ

Смежные вопросы