2017-07-28 15 views
0

デバイスがロック画面でアクティビティが開いていますが、アクティビティ内にアクティビティがあります。 Handlerはデバイスがロック解除されているときにダイアログが表示されています。デバイスの画面がロックされていない場合のみ問題が発生します。ダイアログ内のアクティビティ内でハンドラを開始したいとします。デバイスがロックされているときにハンドラが動作しない

はここに私のコードです:活動で

protected void onCreate(Bundle savedInstanceState) { 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     wind = this.getWindow(); 
     wind.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUA‌​RD); 
     wind.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCK‌​ED); 
     wind.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON‌​); 
     wind.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     setContentView(R.layout.activity_incoming_call); 
     mHandler_calldismiss=new Handler(); 
     mHandler_calldismiss.postDelayed(runnable,30000); } 
+0

コードを投稿してください! –

+0

protected void onCreate(Bundle savedInstanceState){ requestWindowFeature(Window.FEATURE_NO_TITLE); wind = this.getWindow(); wind.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD); wind.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); wind.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON); wind.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_incoming_call); mHandler_calldismiss =新しいハンドラ(); mHandler_calldismiss.postDelayed(実行可能、30000); – Satyendra

答えて

0

、ロックBefor、それはonPause()コールとロックを解除した後、それは()onResumeを呼び出します。したがって、onResume()関数にハンドラコードを書くことができます

  1. ユーザはアクティビティを開きます。
  2. onCreated
  3. は()
  4. ONSTART(と呼ばれる)onResume(
  5. 呼ばれる)、ユーザはonResume()が呼び出されたデバイスをロック解除
  6. )ユーザが(と呼ばれるonPauseデバイスをロック
  7. 呼ばれ
+0

ありがとうございましたTheHound.developerは現在動作しています – Satyendra

+0

@Satyendra –

関連する問題