私の主な活動には、次のコードがあります。
EditText usernameText;
EditText passwordText;
public void sendLogin (View loginview){
Intent i = new Intent(this, NetworkService.class);
startService(i);
}
現在、これはインテントを NetworkService に送信するだけであり、次のように処理されます (切り詰められています)。
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 アプリケーション内でのベスト プラクティスであると指示されました。
私の質問は次のとおりです。これらの 2 つの変数を に送信する最良の方法は何ですか?NetworkService
また、 の中でonHandleIntent
、NetworkService
コードを分離して、要求していること (ログイン、ユーザー情報の取得、位置データの取得) のみを実行するにはどうすればよいですか?等)?
答えが簡単な場合は申し訳ありませんが、私はアプリケーション プログラミングに非常に慣れていません。
ありがとう