@Override
  protected void onPause() {
    super.onPause();

    // Persist changes
    EditText baseUrl = (EditText) findViewById(R.id.baseUrlEditText);
    Spinner logSpinner = (Spinner) findViewById(R.id.logLevelSpinner);

    UserSettings settingsToPersist = mConferenceManager.retrieveSettings();

    String baseUrlStr = baseUrl.getText().toString();
    String appId = mAppIdView.getText().toString();
    String appToken = mTokenTextView.getText().toString();
    String logLevel = (String) logSpinner.getSelectedItem();

    if (!settingsToPersist.BaseURL.equalsIgnoreCase(baseUrlStr)
        || !settingsToPersist.AppId.equals(appId)
        || !settingsToPersist.AppToken.equals(appToken)) {

      settingsToPersist.BaseURL = baseUrlStr;
      settingsToPersist.AppId = appId;
      settingsToPersist.AppToken = appToken;

      mConferenceManager.resetFlagSdkInited();
    }

    settingsToPersist.CurrentLogLevel = LogLevel.fromString(logLevel);

    mConferenceManager.persistSettings(settingsToPersist);

    try {
      mConferenceManager.loadDataFromSettings();
    } catch (Exception e) {
      AlertDialog.Builder popupBuilder = new AlertDialog.Builder(this);
      TextView myMsg = new TextView(this);
      myMsg.setText("An Error occured while selecting devices");
      myMsg.setGravity(Gravity.CENTER_HORIZONTAL);
      popupBuilder.setView(myMsg);
    }
  }