Spanish ¿Cómo desactivar temporalmente la pantalla de bloqueo?

Discussion in 'Spanish Forum' started by Gabino A. de la Gala, Oct 9, 2013.

  1. Gabino A. de la Gala

    Gabino A. de la Gala Active Member Licensed User

    Muy buenas.

    Me gustaría saber si es posible desactivar temporalmente la pantalla de bloqueo. Por ejemplo cuando estamos conectados a la wifi de casa o del trabajo, etc.

    ¿Alguna pista por dónde empezar?

    Gracias anticipadas.
     
  2. DATASOFT (SOLUSOFT S A)

    DATASOFT (SOLUSOFT S A) Member Licensed User

    con temor a equivocarme te podría decir que "no" es posible sin embargo; en lo que he leído lo que recomienda la mayoría es generar un servicio en el que podrías verificar si el wifi esta on o alguna otra condición de tu agrado para mantener on el dispositivo
    tuto de servicios
    http://www.basic4ppc.com/android/forum/threads/service-modules.7542/
    este es un ejempla-so en ingles
    http://www.basic4ppc.com/android/forum/threads/alarm-with-simple-task-reminder.29379/
    sino me equivoco el señor Espinosa4 utilizo esta metodología si sigues su hilo de post tendrás mas ideas ;)
    http://www.basic4ppc.com/android/forum/threads/desde-el-background-al-foreground.31979/
     
  3. bgsoft

    bgsoft Well-Known Member Licensed User

    Hola Gabino:

    Si que es posible hacerlo, siempre y cuando no tengas contraseña en la pantalla de bloqueo.
    MUY IMPORTANTE: se tiene que hacer desde un formulario activo, no se puede desde un servicio o módulo de clase. Puedes llamarlo desde un servicio o un módulo de clase teniendo el sub de Bloqueo/Desbloqueo en un formulario y haciendo un CallSubDelayed .
    Te paso unos Subs que he creado que te serviran para saber si esta bloqueada, y en el caso que lo esté, con otra la puedes desbloquear, y una siguiente para bloquearla si quieres.


    Code:
    Sub ComprobarBloqueoPantalla As Boolean

       r.Target = r.GetContext
       r.Target = r.RunMethod2(
    "getSystemService""keyguard""java.lang.String")
       
    Return  r.RunMethod("inKeyguardRestrictedInputMode")

    End Sub



    Sub DesbloquearPantallaBloqueo
     
        r.Target = r.GetActivity
        r.Target = r.RunMethod(
    "getWindow")
        r.RunMethod2(
    "addFlags"6815872"java.lang.int")
         
    End Sub



    Sub BloquearPantallaBloqueo
        
    ' volver a bloquear pantalla (poner como estaba)
        r.Target = r.GetActivity
        r.Target = r.RunMethod(
    "getWindow")
        r.RunMethod2 (
    "clearFlags"0"java.lang.int")
    End Sub
    El "ComprobarBloqueoPantalla" te devuelve True o False, asi que puedes hacer algo asi:

    Code:
    If WifiActivo then
      PantallaBloqueada  = ComprobarBloqueoPantalla
      
    If PantallaBloqueada Then DesbloquearPantallaBloqueo
    else
      PantallaBloqueada  = ComprobarBloqueoPantalla
      
    If PantallaBloqueada = False then BloquearPantallaBloqueo
    end if

    Saludos
     
    Last edited: Apr 27, 2016
    Gabino A. de la Gala likes this.
  4. Gabino A. de la Gala

    Gabino A. de la Gala Active Member Licensed User

    Muchas gracias a los dos.

    En cuanto pueda lo pruebo.

    Un saludo.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice