Estou atrasado, mas quero completar a resposta.
Uma permissão é adicionada manifest.xml
como
<uses-permission android:name="android.permission.INTERNET"/>
Isso é suficiente para permissões padrão, nas quais nenhuma permissão é solicitada ao usuário. No entanto, não basta adicionar permissão apenas para manifestar se é uma permissão perigosa. Veja doc android . Como câmera, permissões de armazenamento.
<uses-permission android:name="android.permission.CAMERA"/>
Você precisará pedir permissão ao usuário . Eu uso a biblioteca RxPermission , que é amplamente usada para pedir permissão. Porque é um código longo que precisamos escrever para pedir permissão.
RxPermissions rxPermissions = new RxPermissions(this); // where this is an Activity instance // Must be done during an initialization phase like onCreate
rxPermissions
.request(Manifest.permission.CAMERA)
.subscribe(granted -> {
if (granted) { // Always true pre-M
// I can control the camera now
} else {
// Oups permission denied
}
});
Adicione esta biblioteca ao seu aplicativo
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.tbruyelle:rxpermissions:0.10.1'
implementation 'com.jakewharton.rxbinding2:rxbinding:2.1.1'
}