2013-12-21 2 views
1

Я хочу, чтобы отобразить изображение, используя следующий код:BitmapFactory.decodeFile возвращает исключение на Android 4.4 KitKat

protected void onActivityResult(int requestCode, int resultCode, 
     Intent imageReturnedIntent) { 
    super.onActivityResult(requestCode, resultCode, imageReturnedIntent); 

    switch(requestCode) { 
    case SELECT_PHOTO: 
     if(resultCode == RESULT_OK){ 
      Uri selectedImage = imageReturnedIntent.getData(); 
      String[] filePathColumn = {MediaStore.Images.Media.DATA}; 

      Cursor cursor = getContentResolver().query(
           selectedImage, filePathColumn, null, null, null); 
      cursor.moveToFirst(); 

      int columnIndex = cursor.getColumnIndex(filePathColumn[0]); 
      String filePath = cursor.getString(columnIndex); 
      cursor.close(); 
      Log.wtf("M3K", "Above decode"); 
      Bitmap logoBMP = BitmapFactory.decodeFile(filePath); 
      Log.wtf("M3K", "Below decode"); 

      //Display image on layout 
      Log.wtf("M3K", "Above display"); 
      logo.setImageBitmap(logoBMP); 
      Log.wtf("M3K", "Below display"); 
     } 
    } 
} 

Вопрос находится на Bitmap logoBMP = BitmapFactory.decodeFile(filePath);, где на Android 4.4 (проверено на моем Nexus 7) будет возвращать не найденное исключение, по причине EACCES (разрешение отклонено). Это прекрасно работает на ASUS Transformer Infinity 4.2 и отлично работает на моем Nexus 7 с 4.3. Кто-нибудь знает, что должно измениться для совместимости KitKat?

Примечание: Я получаю изображение URI через следующий код:

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 
photoPickerIntent.setType("image/*"); 
startActivityForResult(photoPickerIntent, SELECT_PHOTO); 
+0

разрешение отказано средства, попытаться дать WRITE_EXTERNAL_STORAGE – SathishKumar

ответ

5

Вы можете попробовать поставить его в вашем manifestfile:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
+0

благодарственное вы так много! Я не мог поверить, что решение было таким простым. – NStorm

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