WRITE_EXTERNAL_STORAGE Android Studio

1 resposta
java
W
private static final int SOLICITAR_PERMISSAO = 1;
private void checarPermissao(){

    // Verifica  o estado da permissão de WRITE_EXTERNAL_STORAGE
    int permissionCheck = ContextCompat.checkSelfPermission(this, android.Manifest.permission.WRITE_EXTERNAL_STORAGE);


    if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
        // Se for diferente de PERMISSION_GRANTED, então vamos exibir a tela padrão 
        ActivityCompat.requestPermissions(this, new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, SOLICITAR_PERMISSAO);
    } else {
        // Senão vamos compartilhar a imagem
        sharedImage();
    }
}

error: incompatible types: <anonymous OnClickListener> cannot be converted to Context
<anonymous OnClickListener> cannot be converted to Activity

1 Resposta

T

Pelo que entendi, esse método está sendo invocado ao se clicar/pressionar um botão, certo? Por isso o this não se refere à um context (que é o que o método espera), mas a um
OnClickListener, causando o erro. Você provavelmente precisa colocar o context da Activity onde está o botão (algo como NomeDaActivity.this).

Abraço.

Criado 3 de julho de 2020
Ultima resposta 3 de jul. de 2020
Respostas 1
Participantes 2