Saltar para conteúdo


Foto
- - - - -

verificar existencia de bloqueio de ecrã


  • Por favor inicie sessão para responder
7 respostas a este tópico

#1 kahoz

kahoz

    Membro

  • Membros
  • PipPip
  • 10 mensagens

Mensagem publicada 03 January 2013 - 14:03

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

#2 pedronveloso

pedronveloso

    Veloso

  • Administradores
  • 1578 mensagens
  • S8

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 kahoz

kahoz

    Membro

  • Membros
  • PipPip
  • 10 mensagens

Mensagem publicada 07 January 2013 - 15:39

isso funciona para um padrão, mas se tiver pin/password configurado não me serve de muito :(

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 kahoz

kahoz

    Membro

  • Membros
  • PipPip
  • 10 mensagens

Mensagem publicada 08 January 2013 - 16:52

Acabei por desistir, vou por login na app :(

http://pastebin.com/vzKuDCLS

#5 pedronveloso

pedronveloso

    Veloso

  • Administradores
  • 1578 mensagens
  • S8

Mensagem publicada 11 January 2013 - 20:22

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).

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 kahoz

kahoz

    Membro

  • Membros
  • PipPip
  • 10 mensagens

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 :P

#7 Driver

Driver

    Membro

  • Membros
  • PipPip
  • 51 mensagens

Mensagem publicada 14 January 2013 - 00:12

Boas,

Não sei se isto ajuda: http://developer.and...KeyguardLocked()

http://stackoverflow...cked-in-android

Cumps
Driver

#8 kahoz

kahoz

    Membro

  • Membros
  • PipPip
  • 10 mensagens

Mensagem publicada 14 January 2013 - 00:43

interessante!

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