2012-03-19 49 views
1

我想我以後推出的意圖來執行的方法10秒時:Java方法不執行調度後時間

Intent launchIntent = getPackageManager().getLaunchIntentForPackage(GOOGLE_VOICE_SEARCH_PACKAGE_NAME); 
     startActivity(launchIntent); 

     final Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() { 
     @Override 
     public void run() { 
      SonrLog.d(TAG, "TIMEOUT, reconnecting!"); 
      reconnectSONR(); 
     } 
     }, 10000); //10 second timeout 

意圖發佈會,並在處理程序我的代碼的步驟,但沒有被印刷或被調用。

我該如何得到這個工作?

+0

你試過了Timer Class嗎? – Lucifer 2012-03-19 02:40:59

回答

1

嗯,我試過上面的代碼,它工作正常。我可以在日誌中看到日誌Log.d(TAG, "TIMEOUT, reconnecting!");。我使用的代碼。

button.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      Intent launchIntent = getPackageManager().getLaunchIntentForPackage(GOOGLE_VOICE_SEARCH_PACKAGE_NAME); 
       startActivity(launchIntent); 

       final Handler handler = new Handler(); 
       handler.postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        Log.d(TAG, "TIMEOUT, reconnecting!"); 
       } 
       }, 10000); //10 second timeout 

     } 
    }); 

注:GOOGLE_VOICE_SEARCH_PACKAGE_NAME指向一些其他的包,因爲它只是用於測試。