2012-07-07 38 views
1

我正在製作一個應用程序,使其能夠禁用鍵盤保護程序,但它僅在第一次調用此活動時起作用,之後它仍處於我第一次設置的狀態。keyguard管理員沒有迴應

static boolean k=true; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      // TODO Auto-generated method stub 
      super.onCreate(savedInstanceState); 


      if(k) 
      { 

       Log.d("unlock", "done"); 
       KeyguardManager myKeyGuard1 = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE); 
       KeyguardLock myLock1 = myKeyGuard1.newKeyguardLock(null); 
       myLock1.disableKeyguard(); 
       k=false; 


       finish(); 

      } 
      else{ 

       Log.d("lock", "done"); 
       KeyguardManager myKeyGuard = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE); 
       KeyguardLock myLock = myKeyGuard.newKeyguardLock(null); 
       myLock.reenableKeyguard(); 
       k=true; 
       finish(); 

      } 


      setContentView(R.layout.home); 

     } 
+0

有你活動的onResume移動相同的後重?? – 2012-07-07 14:42:40

+0

嘗試過....still不工作 – jaisonDavis 2012-07-07 15:21:21

回答

1

我想通了自己的解決方案是:當這種擺脫了鎖屏的應用程序被破壞的鎖屏出現再次

if(k==1) 
     { 


      KeyguardManager myKeyGuard = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE); 
      KeyguardLock myLock = myKeyGuard.newKeyguardLock("tag"); 
      myLock.disableKeyguard(); 
      k=0; 
      finish(); 

     } 
     else{ 


      android.os.Process.killProcess(android.os.Process.myPid()); 



     } 
+0

我遇到了類似的問題,當我的應用程序關閉時,鎖定屏幕再次顯示,您是否知道如何避免此問題? – Peter 2012-07-20 22:40:43

+1

收聽'screen-on'廣播,如果設備應該被鎖定,請使用keyguard管理器鎖定它,否則什麼都不做(並且注意KeyguardManager.KeyguardLock是一個depricated類) – jaisonDavis 2012-07-21 02:28:14

+0

謝謝生病嘗試,也許你可以幫助我有了這個問題,它的相關... http://stackoverflow.com/questions/11584714/problems-with-android-lock-in-custom-lock-screen-app – Peter 2012-07-21 13:38:08

相關問題