/**
   * <b>DO NOT CALL THIS METHOD</b>
   *
   * <p>This method is part of the Android Activity lifecycle which is managed by GameEngine itself.
   */
  @Override
  protected final void onResume() {
    super.onResume();
    printDebugInfo("GameEngine", "onResume()...");
    // Note: only restart thread after a real pause, not at startup
    if (gameThread != null) {
      if (gameThread.getState() == Thread.State.TERMINATED) {
        startThread();
      }
    }
    GameSound.resumeSounds();
    MusicPlayer.resumeAll();

    MotionSensor.handleOnResume(this);
  }