Support Library in eigener Library UND Application nutzen?

  • Moin,


    ich hätte da gern eine Frage.
    In einem Projekt benutze ich eine eigene Library als Libraryprojekt, da sie mit dem Demoprojekt gleichermaßen wachsen soll.
    Parallelentwicklung rockt total und so.


    Wie dem auch sei, beides soll so früh wie möglich laufen.
    Die Library so ab Cupcake (API Level 4), in der Hoffnung, dass das V4 in der SupportLibrary für eben jenen API Level steht.
    Bei dem Projekt setze ich konsequent ein API Level 9 Gingerbread voraus.


    Da meine Library mit DialogFragments arbeiten soll muss ich diesen immer einen FragmentManager übergeben.
    Nun habe ich zwei phänomenale Phänomene.
    1) android.support.v4.app.FragmentManager ist nicht klassenkompatibel mit android.app.FragmentManager
    Das heißt, ich kann nicht einfach irgend einen FragmentManager übergeben, es muss zwingend der aus der Support Library sein.


    2) Das Einbinden der SupportLibrary sowohl in die eigene Library als auch in die Demoapp führt zu Buildproblemen.


    Das ganze passierte so mit IntelliJ...
    Was kann ich tun, dass beide Module eines Projektes ein und dieselbe Bibliothek einbinden ohne mir den letzten Nerv zu rauben?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Hallo Lucas,


    meine erste Idee ist, die SupportLib in dem Library-Projekt zu installieren und für die anderen Projekte mit "Verknüpfung anlegen" im Dateimanager eine Referenz erzeugen und diese in die anderen Projekte kopieren und den Namen korrigieren.


    Aber es ist wirklich so - entweder SupportLib in Library-Projekt und App-Projekt mit derselben Version überall oder ganz ohne SupportLib arbeiten.


    Ich kopiere die Datei immer in die Verzeichnisse rein und packe sie dann auch in das Versionsmanagement (Subversion), dann hab ich zwar manchmal etwas Kopierarbeit, wenn die SupportLib eine neue Version bekommt, aber das ist dann doch relativ schnell erledigt.


    Gruß Uwe

  • @Lucas google mal nach Dalvik Error 1 und SupportLib , das ist ein bekanntes Problem. (zumindest klingt es so bei Dir)


    Ich habe das Phänomen auch schon gehabt -> eigenes Projekt -> Support Lib
    ActionbarSherlock
    und ViewPagerindicator , die beiden Libs bringen Ihre SupportLib mit und beim kompilieren bricht es dann mit Dalvik error 1 ab.
    Ich habe es so gelöst das die supportlib nur von meinem Projekt kommt und die beiden anderen diese Einbinden, Projekt clean
    und schon geht es wieder.

  • Ich habe es so gelöst das die supportlib nur von meinem Projekt kommt und die beiden anderen diese Einbinden, Projekt clean und schon geht es wieder.


    Und wie hast du das geschafft?
    Ich würde ja gern meinem Projekt sagen „Wenn du die eigene Lib importierst, dann hast du bereits deine SupportLib, also lass mich mit dem Error in Ruhe.“
    ‚In anderen Programmiersprachen‘ sind solche Import-Cycles ja auch kein Problem...

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Sorry die Antwort wird jetzt unbefriedigend für Dich sein. :(


    Dadurch das ich Eclipse als IDE nutze, gehe ich nur in meine Projekteinstellungen, Buildpath und Add die Supportlib als externes Jar bei den Anderen.


    Keine Ahnung wie das in IntelliJ funktioniert.

  • Ist auf jeden Fall nen Versuch wert, die Liste für die BuildPaths habe ich ja auch. :)

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!