2012-01-25 7 views
6

프로그래밍 방식으로 Android Phone을 잠금 해제하는 방법에 대한 코드를 작성하고 싶습니다.Android 휴대 전화를 프로그래밍 방식으로 잠금 해제 하시겠습니까?

사용자가 근접 센서를 누를 때 휴대 전화를 잠 그거나 잠금 해제하려고합니다.

public class MyActivity extends Activity{ 

    private static final String ACTION = "android.intent.action.ACTION_SCREEN_OFF"; 
    BroadcastReceiver myReceiver; 
    Context context; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     context = this; 
     final IntentFilter theFilter = new IntentFilter(); 
     theFilter.addAction(ACTION); 

     context.registerReceiver(myReceiver, theFilter); 
     System.out.println("inside increate"); 
     myReceiver = new BroadcastReceiver(){ 

      @Override 
      public void onReceive(Context context, Intent intent) { 
       // TODO Auto-generated method stub  
        System.out.println("phone locked*****");     
      } 

     }; 

    }} 
+1

가능한 중복 : // 유래. co.kr/questions/3793221/how-my-app-can-can-unlock-screen-programatically) – razlebe

답변

3
@Override 
    protected void onResume() { 
     // TODO Auto-generated method stub 
     super.onResume(); 
     IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_OFF); 
      registerReceiver(mIntentReceiver, filter); 
      System.out.println("BROADcast receiver registered****"); 
    } 

    private BroadcastReceiver mIntentReceiver = new BroadcastReceiver(){ 

     @Override 
     public void onReceive(Context context, Intent intent) { 
      // TODO Auto-generated method stub 

       System.out.println("phone locked"); 

     } 
3
Window window = getWindow(); 
    window.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD 
      | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED 
      | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON 
      | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

대안 솔루션 ... .. 화면 잠금을 해제하기 위해 시도 [내 응용 프로그램을 프로그래밍 방식으로 화면 잠금을 해제 할 수 있습니까?] (HTTP의

+0

내 하루를 보냈습니다. – EliaszKubala

관련 문제