検索してきましたが、関数のパラメーターとして URL とデータの両方を受け取る HTTP ポスト リクエストを作成できるメソッドの実装が見つかりません。
つまり、私が見つけたすべてのサンプルは特定のパラメーター セットに合わせて調整されており、AsyncTask メソッドで URL とデータの配列を取得する必要がありますが、url (文字列) パラメーターと投稿データ (配列) パラメータ?
ヘルプやリンクをいただければ幸いです。
検索してきましたが、関数のパラメーターとして URL とデータの両方を受け取る HTTP ポスト リクエストを作成できるメソッドの実装が見つかりません。
つまり、私が見つけたすべてのサンプルは特定のパラメーター セットに合わせて調整されており、AsyncTask メソッドで URL とデータの配列を取得する必要がありますが、url (文字列) パラメーターと投稿データ (配列) パラメータ?
ヘルプやリンクをいただければ幸いです。
同様のケースでは、次のパターンを使用します。
import java.util.List;
import org.apache.http.NameValuePair;
import android.os.AsyncTask;
public class AsyncHttpPostTask extends AsyncTask<Void, Void, Boolean> {
private List<NameValuePair> httpPostParams;
private String postHref;
private String someOtherValue;
public AsyncHttpPostTask(final String postHref, final List<NameValuePair> httpPostParams, final String someOtherValue) {
super();
this.postHref = postHref;
this.httpPostParams = httpPostParams;
this.someOtherValue = someOtherValue;
}
@Override
protected Boolean doInBackground(final Void... params) {
// Use httpPostParams (or any other values you supplied to a constructor) in your actual Http post here
// ...
return true;
}
}
AsyncTask を使用するには、コンストラクターに必要なパラメーターを提供するインスタンスを作成し、execute() を呼び出します。
new AsyncHttpPostTask("http://example.com/post", httpPostParams, otherValue).execute();