2016-04-07 10 views
0

Ich benutze Volley-Bibliothek für die Vernetzung in meiner aktuellen App.Abhängigkeitskonflikte zwischen Hauptprojekt und AAR-Modul - Volley

Abhängigkeit:

compile 'com.mcxiaoke.volley:library:1.0.19' 

ich eine benutzerdefinierte Implementierung für meine Imageloader zur Verfügung gestellt haben einige Header für meine Server benötigt außer Kraft zu setzen.

Code unten:

public class MyImageLoader extends ImageLoader { 


    public MyImageLoader(RequestQueue queue, ImageCache imageCache) { 
     super(queue, imageCache); 
    } 

    @Override 
    protected Request<Bitmap> makeImageRequest(String requestUrl, int maxWidth, int maxHeight, 
              ImageView.ScaleType scaleType, final String 
                cacheKey) { 

     return new ImageRequest(requestUrl, new Response.Listener<Bitmap>() { 
     @Override 
     public void onResponse(Bitmap response) { 
      onGetImageSuccess(cacheKey, response); 
     } 
    }, maxWidth, maxHeight, scaleType, Bitmap.Config.RGB_565, new Response.ErrorListener() { 
     @Override 
     public void onErrorResponse(VolleyError error) { 
      onGetImageError(cacheKey, error); 
     } 
    }) { 
     @Override 
     public Map<String, String> getHeaders() throws AuthFailureError { 
      HashMap<String, String> params = new HashMap<>(); 
      //add my params 
      return params; 
     } 
    }; 
} 

}

ich auch die Linkedin sdk aar für Linkedin Integration verwenden.

Dependency Snippet:

compile(name:'linkedin-sdk-debug', ext:'aar') 

repositories{ 
    flatDir{ 
     dirs 'libs' 
    } 
} 

Diese aar auch seine eigene Version von Volley verweist, die ein Glas in der Linkedin SDK Projekt.

mein Projekt zu bauen ist in Ordnung, aber wenn ich es laufen lasse, bekomme ich ein paar Fehler:

Fehler unter:

Fehler: (17, 9) Fehler: Konstruktor ImageRequest in Klasse ImageRequest kann nicht angewendet werden, gegebene Arten; erforderlich: String, Listener, int, int, Config, ErrorListener

gefunden: String, Listener, int, int, Scaletype, Config, ErrorListener Grund: tatsächlichen und formalen Argumentlisten unterscheiden sich in Länge

Fehler: (40, 16) error: Der Konstruktor ImageRequest in der Klasse ImageRequest kann nicht auf gegebene Typen angewendet werden; erforderlich: String, Listener, int, int, Config, ErrorListener gefunden: String,>, int, int, Scaletype, Config, Grund: Ist- und formale Argument Listen unterscheiden sich in Länge

Ich vermute, dies zurückzuführen sein könnte zu einem Zusammenstoß in verschiedenen Volley-Code-Versionen.

Hat jemand diese Art von Situation schon einmal gehabt?

+0

woher hast du diese linkedin-sdk-debug.arr aus? – djodjo

+0

@djodjo von der linkedin zip auf ihrer Website https://developer.linkedin.com/docs/android-sdk – AndroidEnthusiast

+0

in diesem zip haben Sie Code nicht aar und auch Sie haben die volley in einem separaten Ordner – djodjo

Antwort

0

Im linkedin zip Sie volley in einem separaten Modul haben, so empfehle ich Ihnen, die Sie machen, nämlich, dass u haben drei Module:

1) Code

2) linkedin Code

3) - gemeinsamer Volley-Code und kompiliert Projekt (': Volley') in 1) und 2) OR - Verwendung der Kompilierung 'com.android.volley: Volley: 1.0.0' in 1) und 2)

beachten Sie, dass Wenn Sie sich auf volley beschränken wollen, dann ist es gut er verwenden

com.android.volley:volley

als

com.mcxiaoke.volley:library

nicht mehr eingehalten wird.

+0

Ich habe gerade das Volley-Glas entfernt und die Abhängigkeiten geändert, um die gleiche zu sein. Vielen Dank – AndroidEnthusiast