외부저장소에 생성되어 있는 폴더 안의 파일을 수정하는 앱을 만들고 있습니다..
분명이 매니페스트에 퍼미션 쓰고 메인 액티비티에 퍼미션 요청 함수도 만들어서 사용자의 퍼미션 동의까지 받았지만 파일 수정할때 java.io.FileNotFoundException을 뿜네요.. 어떻게 해야 수정이 가능할까요??
아래코드는 퍼미션 요청과 결과값 받는 코드이며 start()가 앱 초기 설정들 시작하는 함수입니다.
private void requestExternalStoragePermissions() {
if (Build.VERSION.SDK_INT >= 23) {
if (checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) {
Toast.makeText(this, "Permission granted to write your External storage", Toast.LENGTH_SHORT).show();
start();
}
else {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
}
}
}
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case 1 : {
// If request is cancelled, the result arrays are empty.
if (grantResults.length > 0&&grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Toast.makeText(this, "Permission granted", Toast.LENGTH_SHORT).show();
start();
}
else {
Toast.makeText(this, "Permission denied to access your External storage", Toast.LENGTH_SHORT).show();
}
return;
}
}
}