Tag miteinander.
Vor kurzem habe ich mit der Android Programmierung angefangen und bin nun dabei meine eigentlich nutzlose app (:D) in 2 Apps aufzuteilen. Eine Free und eine Pro App.
Hierzu versuche ich mit einem Android Library Project zu arbeiten, was scheinbar noch nicht so ganz klappen möchte.
Hier mal was ich bis jetzt gemacht habe:
- Bestehende, funktionierende App zu einer "Is Library" umfunktioniert
- Zwei neue Projekte erstellt (Ich hab einfach mein funktionierendes Projekt 2 mal kopiert bevor ich es zur library gemacht habe)
- Beide Projekte die Library zugeteilt
So wie ich das jetzt verstanden habe sollte es so funktionieren, dass alles, was im Projekt selbst ist, Vorrang hat, und alles was nicht im Projekt ist, sprich von mir gelöscht wird, aus der Library geholt wird. Sehe ich das richtig?
Nun zu meinen Problemen, die ich noch nicht ganz begriffen habe:
Erstmal kam mir gleich nach dem zuteilen der Library der Fehler, dass Attribute in der attr.xml des Ordners values bereits definiert sind. Nagut, dann einfach die .xml aus dem Ordner entfernen.
Nun gibt es keine Probleme mehr, die angezeigt werden. Möchte ich das Projekt nun auf mein Galaxy Nexus installieren, bekomme ich folgendes:
[2013-03-10 15:31:08 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/mikebdev/screenhealth/util/SystemUiHider$OnVisibilityChangeListener;
[2013-03-10 15:31:08 - ScreenHealth] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/mikebdev/screenhealth/util/SystemUiHider$OnVisibilityChangeListener;
Wenn ich die entsprechende Activity einfach lösche, wird einfach eine andere Activity als Problemkind dargestellt.
Nun habe ich zum Test einfach mal alle Activities entfernt, werden ja von der library hinzugefügt. Die Manifest.xml habe ich entsprechend angepasst und siehe da, nun funktioniert es.
Nun verstehe ich einfach nicht, warum dieser Fehler auftritt. Normal sollte ja die Activity aus dem Projekt einfach Vorrang haben, denn vor allem ist in der Manifest ja auch die Activity im Projekt angegeben. Erst das löschen der Activities hat den Fehler beseitigt (und dann natürlich einige FC's ausgelöst, da nicht richtig in der Manifest deklariert)
Langer Text, ich weiß, tut mir auch schrecklich leid aber ich google schon seit stunden und bei Stackoverflow finde ich auch nichts, obwohl da ja eigentlich immer Hilfe zu finden ist
Zum Schluss noch der Hinweis: ich bin blutiger Anfänger und lerne gerade Java und eben Android durch ausprobieren. Ich brauche niemanden der mir sagt ich solle erst das lernen und dann hier weiter machen blablabla. Ich weiß man macht das so nicht, aber learning by doing Danke für das Verständnis :):)