Android httpPost avec des paramètres et des fichiers

J'ai besoin de télécharger certains de données de serveur PHP.
Je peux faire du post avec les paramètres:

String url = "http://yourserver";

HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
nameValuePairs.add(new BasicNameValuePair("user", "username"));
nameValuePairs.add(new BasicNameValuePair("password", "password"));
try {
    httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    httpClient.execute(httpPost);
}

Je suis aussi capable de télécharger un fichier:

String url = "http://yourserver";
File file = new File(Environment.getExternalStorageDirectory(),
        "yourfile");
try {
    HttpClient httpclient = new DefaultHttpClient();

    HttpPost httppost = new HttpPost(url);

    InputStreamEntity reqEntity = new InputStreamEntity(
            new FileInputStream(file), -1);
    reqEntity.setContentType("binary/octet-stream");
    reqEntity.setChunked(true); //Send in multiple parts if needed
    httppost.setEntity(reqEntity);
    HttpResponse response = httpclient.execute(httppost);
    //Do something with response...
}

Mais comment puis-je les mettre ensemble? J'ai besoin de télécharger une image et les paramètres dans un seul post.
Grâce

  • l'ajout de la dernière pot augmente la taille juste en .2 mo.
  • Putain j'ai regardé après un simple de la paix de code pour télécharger une image, vous monsieur m'a sauvé d'un mal de tête. N'a tout simplement pas comprendre que vous venez de mettre un InputStreamEntity sur elle. Je sais qu'il y a d'autres façons complexes, mais pas ce dont j'avais besoin.
InformationsquelleAutor Kelib | 2012-10-21