示例#1
0
 /** Stops the current playback, returns once it has stopped. */
 private void stopCurrentPlayback() {
   boolean isPlaying;
   CountDownLatch engineInitializedLatch;
   CountDownLatch playbackFinishedLatch;
   synchronized (lock) {
     isPlaying = mHasStartedPlayback && !hasPlaybackFinished();
     engineInitializedLatch = mEngineInitializedLatch;
     playbackFinishedLatch = mPlaybackFinishedLatch;
     if (isPlaying) {
       mSkipCompletionReport = true;
     }
   }
   if (isPlaying) {
     waitForLatch(engineInitializedLatch);
     VariableSpeedNative.stopPlayback();
     waitForLatch(playbackFinishedLatch);
   }
 }