Использование putExtra для передачи значений службе намерений

в рамках моей основной деятельности у меня есть следующий код:

EditText usernameText;
EditText passwordText;
public void sendLogin (View loginview){
    Intent i = new Intent(this, NetworkService.class);
    startService(i);
}

В настоящее время это просто отправляет намерение в NetworkService, которое обрабатывается следующим образом (truncated):

public class NetworkService extends IntentService {

    public NetworkService() {
        super("NetworkService");
    }

    protected void onHandleIntent(Intent i) {

        /* HTTP CONNECTION STUFF */

        String login = URLEncoder.encode("Username", "UTF-8") + "=" + URLEncoder.encode("XXX", "UTF-8");
        login += "&" + URLEncoder.encode("Password", "UTF-8") + "=" + URLEncoder.encode("XXX", "UTF-8"); 
    }
}

Теперь мне нужно выяснить, как передать эти значения usernameTextи passwordTextчерез NetworkServiceв «XXX», но ТАКЖЕ внутри NetworkService, я намереваюсь (без каламбура ), чтобы он обрабатывал несколько намерений из разных мест, например, одно из входа в систему, одно из получения некоторой информации о пользователях, использующих токен входа в систему. Это место, где будет храниться вся моя сеть. Меня проинструктировали, что это лучшая практика в приложениях для Android, чтобы разделить сеть.

Мой вопрос: :Как лучше всего отправить эти две переменные в NetworkService, а также как в onHandleIntentиз NetworkServiceразделить код, чтобы делать только то, что я прошу. для (входа в систему, получения информации о пользователе, получения данных о местоположении и т. д. )?

Извините, если ответ прост, но я очень новичок в программировании приложений.

Спасибо

18
задан NatNgs 15 February 2017 в 14:27
поделиться