Esempio n. 1
0
        @Override
        public void handleMessage(final Message msg) {

          // Get active connectors with login status
          final ILogin[] loginConns = ConnectorFactory.getActiveLiveConnectors();

          // Update UI
          infoArea.removeAllViews();
          final LayoutInflater inflater = getLayoutInflater();

          for (final ILogin conn : loginConns) {

            final TextView connectorInfo =
                (TextView) inflater.inflate(R.layout.main_activity_connectorstatus, null);
            infoArea.addView(connectorInfo);

            final StringBuilder userInfo =
                new StringBuilder(conn.getName()).append(Formatter.SEPARATOR);
            if (conn.isLoggedIn()) {
              userInfo.append(conn.getUserName());
              if (conn.getCachesFound() >= 0) {
                userInfo.append(" (").append(conn.getCachesFound()).append(')');
              }
              userInfo.append(Formatter.SEPARATOR);
            }
            userInfo.append(conn.getLoginStatusString());

            connectorInfo.setText(userInfo);
          }
        }
Esempio n. 2
0
  private void startBackgroundLogin() {
    assert (app != null);

    final boolean mustLogin = app.mustRelog();

    for (final ILogin conn : ConnectorFactory.getActiveLiveConnectors()) {
      if (mustLogin || !conn.isLoggedIn()) {
        new Thread() {
          @Override
          public void run() {
            if (mustLogin && conn == GCConnector.getInstance()) {
              // Properly log out from geocaching.com
              GCLogin.getInstance().logout();
            }
            conn.login(firstLoginHandler, MainActivity.this);
            updateUserInfoHandler.sendEmptyMessage(-1);
          }
        }.start();
      }
    }
  }