Les problèmes, y compris Apache HttpComponents dans Android Gradle projet

J'essaie d'inclure httpmime dans mon application en utilisant le construire.gradle fichier, et tout compile bien. Au lieu de cela, lorsque l'application tente d'utiliser effectivement le MultipartEntityBuilder classe, il y a un tas d'AVERTIR les messages de niveau sur le journal en disant qu'il y a des problèmes.

Voici l'extrait de mon build.gradle pour la dépendance:

 compiler('org.apache.httpcomponents:httpmime:4.+') { 
exclure le module: "httpclient" 
} 

Voici les erreurs:

10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 6967 (DEFAULT_BINARY) dans Lorg/apache/http/entité/ContentType; 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 6967 (DEFAULT_BINARY) dans Lorg/apache/http/entité/ContentType; 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 6967 (DEFAULT_BINARY) dans Lorg/apache/http/entité/ContentType; 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.367 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.377 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre méthode statique 19478: Lorg/apache/http/util/Args;.notNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 
10-09 13:39:37.377 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 6968 (DEFAULT_TEXT) dans Lorg/apache/http/entité/ContentType; 
10-09 13:39:37.377 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 
10-09 13:39:37.377 2409-2426/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de trouver la classe référencée dans la signature (Lorg/apache/http/entité/ContentType;) 

La classe java:

import android.util.Journal; 

importer java.io.IOException; 
importer java.io.InputStream; 
importer java.io.OutputStream; 
importer java.net.HttpURLConnection; 
importer java.net.URL; 

import org.apache.http.HttpEntity; 
import org.apache.http.de l'entité.le mime.MultipartEntityBuilder; 

public class FileUploader { 
private final static String LIMITE = "__--__--__SERVETHEOVERMIND-__-_"; 

public void uploadFile(String targetUrl, MultipartEntityBuilder télécharger, UploadHandler après) { 
Journal.v("FileUploader", "Téléchargement" + targetUrl); 

HttpURLConnection con = null; 
OutputStream os = null; 
InputStream is = null; 

try { 
HttpEntity uploadEntity = télécharger.build(); 
URL postTo = new URL(targetUrl); 
con = (HttpURLConnection) postTo.openConnection(); 

con.setRequestMethod("POST"); 
con.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + LIMITE); 
con.setDoOutput(true); 
con.setDoInput(true); 
con.setUseCaches(false); 

con.addRequestProperty("Connexion", "Keep-Alive"); 
con.setRequestProperty("Content-length", String.valueOf(uploadEntity.getContentLength())); 

os = con.getOutputStream(); 
uploadEntity.writeTo(os); 
os.close(); 

con.connect(); 
est = con.getInputStream(); 

après.consumeUploadResponse(est); 
con.disconnect(); 
} catch (IOException e) { 
e.printStackTrace(); 
} 

si(con != null) { 
con.disconnect(); 
} 

si(système d'exploitation != null) { 
try { 
os.close(); 
} catch (IOException e) { 
Journal.v("Uploader", "Fermé flux de sortie"); 
} 
} 

if (! = null) { 
try { 
est.close(); 
} catch (IOException e) { 
Journal.v("Uploader", "Fermé flux d'entrée"); 
} 
} 
} 

public interface UploadHandler { 
public void consumeUploadResponse(InputStream stream); 
} 
} 

[MODIFIER] l'exactitude des Dépendances, comme par réponse

compiler('org.apache.httpcomponents:httpmime:4.+') { 
exclure le module: "httpclient" 
} 
compiler('org.apache.httpcomponents:httpcore:4.+') { 
exclure le module: "httpclient" 
} 

[DEUXIÈME ÉDITION] Encore des questions - il est maintenant de ces autres bits manquants, mais il pourrait y avoir des problèmes sur le backend:

10-10 11:51:54.998 29597-29638/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 7465 (EXEMPLE) dans Lorg/apache/http/message/BasicHeaderValueParser; 
10-10 11:51:54.998 29597-29638/com.de l'entreprise.app W/dalvikvm﹕ VFY: impossible de résoudre champ statique 7459 (EXEMPLE) dans Lorg/apache/http/message/BasicHeaderValueFormatter; 

[ENCORE UN AUTRE EDIT]

Il semble que le dernier peu de bits manquants n'ont pas d'effet sur la réussite de l'utilisation de la MultipartEntityBuilder dans ce cas.

Avez-vous réussi à supprimer le Lorg/apache/http/message.... champ statique mises en garde? Je parais e d'avoir un problème similaire, maintenant.
votre premier bloc de code ci-dessus fixe l'avertissement que je recevais à android studio. Merci!

OriginalL'auteur A. Rager | 2013-10-09