verificar existencia de bloqueio de ecrã
#1
Mensagem publicada 03 January 2013 - 14:03
Bom ano a todos, antes de mais
Ando a' procura de uma forma de garantir que a minha aplicação corra se (e só se) o dispositivo tiver um mecanismo de bloqueio configurado (pin, pattern, etc). Já encontrei na net formas de lançar as activities de desbloqueio em telefones rootados, no entanto isso não é solução... só preciso de uma forma de verificar se o bloqueio está activado ou não de uma forma que não precise de root
#2
Mensagem publicada 06 January 2013 - 23:32
Caríssimos,
Bom ano a todos, antes de mais
Ando a' procura de uma forma de garantir que a minha aplicação corra se (e só se) o dispositivo tiver um mecanismo de bloqueio configurado (pin, pattern, etc). Já encontrei na net formas de lançar as activities de desbloqueio em telefones rootados, no entanto isso não é solução... só preciso de uma forma de verificar se o bloqueio está activado ou não de uma forma que não precise de root
Sem Root (com o qual poderias verificar valores escondidos das Settings) e usando a API da SDK o melhor que *penso* que podes fazer é saber se o bloqueio está activo a um dado momento e se ele requer ou não palavra passe para desbloquear ( http://developer.and...eyguardLocked() ).
Outra forma será "questionar" as settings directamente, algo deste género:
Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCK_PATTERN_ENABLED);
http://developer.and...PATTERN_ENABLED ... outra a ter em consideração seria a "LOCK_PATTERN_VISIBLE" . repara que são ambos números que representam booleanos, mas que estão guardados como String. (sim é parvo), mas isso faz com que tenhas de usar o Secure.getString , atenção a esse pormenor.
#3
Mensagem publicada 07 January 2013 - 15:39
entertanto descobri isto http://developer.and...ent-policy.html mas ainda estou a perceber se é aplicável ao meu caso e como
obrigado,
EDIT: mais um tutorial intressante sobre o tema: http://rootfs.wordpr...-administrator/
já depois de ter dado permissões no dispositivo ando com um problema um bocado chato...
01-07 17:44:59.081: E/AndroidRuntime(30313): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xis.elars/com.xis.elars.MainActivity}: java.lang.SecurityException: No active admin owned by uid 10017 for policy #3
Editado por kahoz, 07 January 2013 - 17:48.
#4
Mensagem publicada 08 January 2013 - 16:52
#5
Mensagem publicada 11 January 2013 - 20:22
Acabei por desistir, vou por login na app
http://pastebin.com/vzKuDCLS
Vê esta página: http://developer.and...vice-admin.html
Tens um exemplo funcional nos Exemplos da API que vêm com a SDK.
#6
Mensagem publicada 12 January 2013 - 13:01
O erro parece que não estás a requerer as permissões de Admin. Se for implementado correctamente deverá aparecer uma nova janela a perguntar se a tua app tem permissões para administrar o dispositivo (pelo menos desde ICS é assim).
Se vires o meu pastebin percebes que eu estou a fazer isso, e essa activity que falas chegou a aparecer e aceitei
de qualquer modo, já me desfiz daquele código
#7
Mensagem publicada 14 January 2013 - 00:12
Não sei se isto ajuda: http://developer.and...KeyguardLocked()
http://stackoverflow...cked-in-android
Cumps
Driver
#8
Mensagem publicada 14 January 2013 - 00:43
apesar de já ter esta questão na aplicação em si encerrada (a própria app tem login), se tiver um tempo extra vou dar uma olhada nisso
obrigado