Como resposta ao e-mail enviado semana passada, o professor explicou que as publicações devem conter além do resumo semanal, contemplar técnicas importantes que desenvolvemos no decorrer da semana, lembrando que pode haver mais de uma publicação por semana. Seguindo esta orientação, iremos apresentar a construção de uma classe que gerência as permissões necessárias de uma aplicação mobile (Android).
Construindo a classe:
Para construir a classe de permissões, criaremos um método que dado como parâmetros um activity, um requestCode e uma listagem com as permissões verifica se as permissões passadas já estão autorizadas e caso não estejam, solicita através de um "pop up" a permissão. A seguir, o código da classe de permissões:
public class PermissionUtils {
//Solicita as permissões
public static boolean validate(Activity activity, int requestCode, String... permissions) {
List<String> list = new ArrayList<String>();
for (String permission : permissions) {
// Valida permissões
boolean ok = ContextCompat.checkSelfPermission(activity, permission) == PackageManager.PERMISSION_GRANTED;
if (! ok ) {
list.add(permission);
}
}
if (list.isEmpty()) {
// Tudo ok, retorna true
return true;
}
// Lista de permissões que falta acesso.
String[] newPermissions = new String[list.size()];
list.toArray(newPermissions);
// Solicita permissões
ActivityCompat.requestPermissions(activity, newPermissions, 1);
return false;
}
}
Para chamar esta classe, em sua activity inicial (Activity da primeira tela que é exibida na aplicação) basta colocar o código abaixo dentro do OnCreate.String[] permissoes = new String[] {
Manifest.permission.PERMISSAO_QUE_VOCE_QUER_1,
Manifest.permission.PERMISSAO_QUE_VOCE_QUER_2,
Manifest.permission.PERMISSAO_QUE_VOCE_QUER_3,
}
Todas as Strings de permissão do Android
De: Giovanni Henrique
Nenhum comentário:
Postar um comentário