Не запрашивать разрешение на внешнее хранение в студии Android - PullRequest
1 голос
/ 14 февраля 2020

меня зовут Том, я пытаюсь открыть файл из внешнего хранилища. почему-то вообще не спрашивает разрешения?!?! Буду благодарен за любой ответ! Том. Вот мой код:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
            Toast.makeText(MainActivity.this,"should snd request ",Toast.LENGTH_SHORT).show();

            requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, PERMISSION_REQUET_CODE);
        }

public void OnRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResult){
        if(requestCode == PERMISSION_REQUET_CODE){
            if(grantResult[0] == PackageManager.PERMISSION_GRANTED){
                Toast.makeText(MainActivity.this,"permission granted!",Toast.LENGTH_SHORT).show();
            }
            else{
                Toast.makeText(MainActivity.this,"*** permission  not granted! ***",Toast.LENGTH_LONG).show();
                finish();
            }
        }
    }

1 Ответ

1 голос
/ 14 февраля 2020

Убедитесь, что вы также добавили права доступа к файлу Manifest

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.appname">

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