Я получаю эту ошибку после того, как разрешение было разрешено и активность была воссоздана.Android M Permission denied после того, как он был предоставлен
I/AppCompatDelegate: The Activity's LayoutInflater already has a Factory installed so we can not install AppCompat's
W/EGL_emulation: eglSurfaceAttrib not implemented
W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x9e23f960, error=EGL_SUCCESS
W/System.err: java.io.IOException: open failed: EACCES (Permission denied)
W/System.err: at java.io.File.createNewFile(File.java:939)
W/System.err: at java.io.File.createTempFile(File.java:1004)
и
E/AndroidRuntime: java.lang.NullPointerException: file
E/AndroidRuntime: at android.net.Uri.fromFile(Uri.java:452)
Код спросив разрешения является:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED ||
ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
}
После аварии, когда я запустить приложение, я не вижу диалог разрешения и все работает отлично, Я могу открыть камеру с намерением. Я использую эмулятор. Nexus 5 API 23.
Эта ошибка не связана с разрешениями для Android. Кажется, что проблема связана с файловой системой 'java.io.IOException: open failed: EACCES (Permission denied)'. –
Возможно, но в следующий раз, когда я попробую, он работает нормально после получения разрешения. – SpyZip
Это хорошо известная ошибка. Разрешения WRITE_EXTERNAL_STORAGE и READ_EXTERNAL_STORAGE предоставляются только после закрытия и открытия приложения. – greywolf82