Donnerstag, 13. Juni 2013

Android Studio - ActionBarSherlock lib

Wie ein Projekt in Android Studio importiert wird, habe ich bereits im Beitrag Android Studio - Erste Erfahrungen beschrieben.

In diesem Beitrag möchte ich zusammenfassend aufschreiben wie ein Projekt als lib genützt werden kann. Als Beispiel habe ich mir hierzu die ActionBarSherlock lib rausgesucht.

Vorarbeit:
  • downloade die neueste Version von ActionBarSherlock 
  • Für die library wird der Ordner "actionbarsherlock" benötigt 
  • ich empfehle zunächst die lib mit einem entsprechenden Projekt (androidstudio.test) in Eclipse einzufügen und das Projekt erst einmal hier zum laufen zu bringen (dann ist schon mal sicher gestellt, dass das Projekt eigentlich funktionieren müsste :) )
  • als nächstes wird das Projekt als gradle exportiert (die lib erhält automatisch ihre entsprechenden gradle Dateien)
Nun zu Android Studio:
  • möchte man den kompletten Workspace (= Projekt in Android Studio) importieren, so muss dieses Projekt lediglich geöffnet bzw importiert werden 
    • File -> Open / File -> Import Project
  • Handelt es sich um ein bereits existierendes Projekt (= Modul in Android Studio), das mit bspw. Eclipse erstellt wurde, so wird ein Modul importiert (beachte dabei die "Vorarbeit")
    • File -> Import Modul -> Create module from existing source 
  • Als nächstes muss die Projekt Struktur (entspricht "Build Path") konfiguriert werden:
    • File -> Project Structure
      • es öffnet sich ein Dialog mit drei Spalten
      • damit die actionbarsherlock lib richtig funktioniert müssen folgende Punkte durchgearbeitet werden:
  1. wähle in der ersten Spalte "Global Libraries"; füge in der zweiten Spalten (-> "Plus") eine java-library hinzu (wähle Pfad zu actionbarsherlock/bin/actionbarsherlock.jar)
  2. wähle nun in der ersten Spalte "Facets"; in der zweiten Spalte "actionbarsherlock" und überprüfe die Checkbox "Library module" -> muss ausgewählt sein
  3. wähle in der ersten Spalte "Libraries" und überprüfe, ob die actionbarsherlock lib vorhanden ist
  4. wähle in der ersten Spalte "Modules"
    1. wähle in der zweiten Spalte "actionbarsherlock" und überprüfe ob die entsprechende support-lib vorhanden ist (falls nicht -> gehe zu libraries, erstelle die datei und füge sie hier hinzu -> siehe "Plus" auf der rechten Seite)
    2. wähle in der zweiten Spalte dein Projekt aus und füge auch hier die support-lib hinzu, falls sie nicht schon vorhanden ist. Damit auch die actionbarsherlock-lib richtig funktioniert, füge die als "Module Dependency" hinzu






Probleme die auftreten können:
    • Falls die junit tests Fehlermeldungen liefern wie "... junit does not exist" -> den Ordner "test" in der actionbarsherlock lib löschen oder "excluden", danach müsste das Projekt ohne Fehler laufen (Alternativ: füge junit.jar hinzu)
    • Desweiteren könnte es ein Problem mit dem Theme "Theme.Sherlock" geben 
      • das hatte ich anfangs auch, weil die Konfiguration nicht gestimmt hat, so wie ich es nun habe tuts!
    • manchmal spinnt die IDE noch (aktuelle Version 0.1.4) -> da kann ein Restart helfen
Falls mal jemand doch noch Probleme mit der lib hat, einfach melden. Werde versuchen zu helfen :)

Für mich hilfreiche Links:
http://code.google.com/p/android/issues/detail?id=55451
http://stackoverflow.com/questions/16577241/installing-actionbarsherlock-with-android-studio

EDIT 2013-06-24 (Android Studio 0.1.6):

    Keine Kommentare:

    Kommentar veröffentlichen