Android 6Разрешение запрос (WRITE_EXTERNAL_STORAGE) не отображается
Я написал следующий код, который проверяет наличие разрешений и если нет таких разрешений, он запрашивает у пользователя, чтобы дать им.
private void checkDiskPermission()
{
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
Toast.makeText(this, "no disk access" , Toast.LENGTH_LONG).show();
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
}
else
{
Toast.makeText(this, "disk access - OK" , Toast.LENGTH_LONG).show();
}
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
Toast.makeText(this, "no GPS access" , Toast.LENGTH_LONG).show();
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 0);
}
else
{
Toast.makeText(this, "GPS access - OK" , Toast.LENGTH_LONG).show();
}
}
Этот код работает отлично для разрешения GPS, но не для разрешения WRITE_EXTERNAL_STORAGE. Диалог появляется только в одном случае.
Почему это так?
Спасибо!
Проверить это решение http://stackoverflow.com/a/37160573/842607 –