@Implementation
  protected void start() {
    if (checkStateError("start()", startableStates)) {
      if (state == PLAYBACK_COMPLETED) {
        startOffset = 0;
      }
      state = STARTED;
      doStart();
    }
  }
@Implementation
  protected void start() {
    if (checkStateError("start()", startableStates)) {
      if (state == PLAYBACK_COMPLETED) {
        startOffset = 0;
      }
      state = STARTED;
      doStart();
    }
  }
@ Implementation protected void start ( ) { if ( checkStateError ( "start()" , startableStates ) ) { if ( state == PLAYBACK_COMPLETED ) { startOffset = 0 ; } state = STARTED ; doStart ( ) ; } }
Simulates private native method {@link MediaPlayer#_start()}. Sets state to STARTED and calls
{@link #doStart()} to start scheduling playback callback events.

<p>If the current state is PLAYBACK_COMPLETED, the current position is reset to zero before
starting playback.

@see #doStart()
Simulates private native method { @link MediaPlayer#_start () } . Sets state to STARTED and calls { @link #doStart () } to start scheduling playback callback events .