2016-09-26 4 views
5

bir FileNotFoundException atarFileNotFoundException: açık başarısız oldu: EACCES (İzin engellendi) emülatörü (i genymotion kullanın) iyi çalışıyor, ama gerçek bir cihazda çalıştırdığınızda (benim telefon Asus Zenfone Lazer 5.0 olduğunu) olarak

java.io.FileNotFoundException: /storage/emulated/0/cam20160926_075819.jpg: başarısız açmak: EACCES (İzin reddedildi)

imgBitmap = MediaStore.Images.Media.getBitmap (cr, SelectedImage); Burada

ben bu EACCES hakkında bazı ilgili soru ve çözümleri okumak

@Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     switch (requestCode){ 
      case CAMERA_REQUEST: 
       if (resultCode == Activity.RESULT_OK){ 
        Uri selectedImage = imageUri; 
        getActivity().getContentResolver().notifyChange(selectedImage, null); 
        ContentResolver cr = getActivity().getContentResolver(); 
        Bitmap imgBitmap; 
        try { 
         imgBitmap = MediaStore.Images.Media.getBitmap(cr, selectedImage); 

         accountPhoto.setImageBitmap(imgBitmap); 
        } catch (IOException e) { 
         e.printStackTrace(); 
         Toast.makeText(getActivity().getApplicationContext(), "Something went wrong while taking a photo", Toast.LENGTH_LONG).show(); 
         Log.e("Camera", e.toString()); 
        } 

       } 
     } 
    } 

yöntem onActivityResult(), ve o sorun iznim olduğunu görünüyor: Ben

<uses-feature android:name="android.hardware.camera2" android:required="true"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18"/> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 

eksik bir şey?

+0

SDK ve Android'in hangi sürümünü kullanıyorsunuz? –

+0

Ben marshmallow 6,0 şimdi api lvl 23. ve benim app benim sdk benim sürümümüzü lpi 18 –

+0

yüzden bu yüzden dışarıdan okuma ve yazma hakkında izin isteğinizi göremiyorum? –

cevap

1

: Ben cihazınız daha fazla bilgi için bu cevap dışarı bir SDK sürümü> 18.

Kontrol çalışır şüpheli

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && 
checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) 
    { 
     requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, RESULT); 
    } 
    else 
    { 
    //your code 
    } 
+0

Bunu nereye koyarım? –

+0

bu konudaki parçayı kullanarak im –

+0

imini kullanan yönergeleri önce koydu, ben RESULT –

0

yanıtı için teşekkürler, READ_EXTERNAL_STORAGE okuma iznini geçersiz kılar. documentation'a bakarsanız, birincinin depolamadan okumaya izin verdiğini görürsünüz.

android:maxSdkVersion özniteliğini deneyin ve kaldırın ve çalışıp çalışmadığını görün. Eğer talimatları başlamadan önce bu izin Marshmallow tehlikeli olarak kabul edilir, çünkü izin talep etmek zorunda https://stackoverflow.com/a/15270626/425238

+0

değil, yanıtladığınız için teşekkürler, ancak yine de işe yaramıyor. –

İlgili konular