2013-01-04 49 views
0

我正在爲Android API 11(或更新)製作應用程序。我試圖從TTS引擎獲得回調,但是出現了一個問題。我試圖使用setOnUtteranceProgressListener()方法來設置偵聽器,但Eclipse說需要API 15或更新(並引發編譯錯誤),所以接下來我嘗試使用setOnUtteranceCompletedListener(),但比它說「此方法在API級別15中已棄用」。我應該如何使它與API 11及更高版本兼容?setOnUtteranceProgressListener API <15

回答

1

您可以使用不推薦使用的方法,也可以根據設備運行的Android版本執行其中一項操作。你可以看看Build.VERSION.SDK_INT。

0

您可以使用此代碼:

TextToSpeech tts = new TextToSpeech(this, this); 

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) { 
     // API > 15 
     tts.setOnUtteranceProgressListener(new UtteranceProgressListener() { 
      @Override 
      public void onStart(String utteranceId) { 
       // do something 
      } 

      @Override 
      public void onDone(String utteranceId) { 
       // do something 
      } 

      @Override 
      public void onError(String utteranceId) { 
       // do something 
      } 
     }); 
    } else { 
     // API < 15 
     tts.setOnUtteranceCompletedListener(new TextToSpeech.OnUtteranceCompletedListener() { 
      @Override 
      public void onUtteranceCompleted(String utteranceId) { 
        // do something 
      } 
     }); 
    } 
相關問題