Android Multiple SDK-Support in einer Apk

T

Tomate_Salat

Gast
Hi,
ich habe bald mein erstes größeres Android-Projekt vor mir und da mache ich mir natürlich schon so meine Gedanken. Apps für mich im privaten würde ich ja gnadenlos einfach für Android 4.0 entwickeln. Aber die App die ich entwickeln soll, ist ja für mehr als eine Person angedacht :D. Jetzt würde ich aber gerne Android 4.0 nicht außer acht lassen, aber mein min-sdk-lvl wird wohl zwischen 8 und 10 liegen (2.2-2.3.x).

In einem Testprojekt war das zwar kein Problem, eine App auf Android 2.2 und meinem Galaxy Nexus zum laufen zu bringen (auch wenn erstaunlicherweise auf dem 4.0 eine NPE bei der installation [ts=Genau hab ichs mir jetzt auch nicht angeschaut wieso. Laufen tut die App ja]glaub[/ts] fliegt).

Wie würdet ihr das machen? Die developer-seite spricht da ganz gerne von multiplen Apks. Dann hätte ich aber wohl auch mehrer Projekte (mit viel Pech für jedes Api-level eins :wuerg:)

Bisherige Nachteile an multiplen SDK-versionen in einem Projekt:
- Verwendung von Deprecated Klassen (oder redundants für die Api-levels)
- Warnung im AndroidManifes (minsdk<projektsdk)
- Die bisher wenig beachtete NPE bei der Installation :joke:

Vllt hat ja einer von euch schon soetwas gelöst und kennt die non-plus-ultra-Lösung :D

MFG

Tomate_Salat
 

schlingel

Gesperrter Benutzer
Ich persönlich entwickle mit dem 4.0er SDK und verwende Target 8. Ich beschränke mich allerdings auch auf die verfügbaren Klassen aus dem 8er Framework und habe bis jetzt keine Probleme gehabt.
 
T

Tomate_Salat

Gast
Was ich bisher als alternativen erfahren habe, war:
- niedrigstes Api-level verwenden und mit kompatibilitätspackages arbeiten (überzeugt mich aber nicht)
- mit reflection Arbeiten um die verfügbarkeit von neuen Methoden zu testen. Scheint gerne verwendet zu werden. Ist aber auch nicht unbedingt die Methode, die mir wirklich zusagt.
- Api-level des Geräts testen und dementsprechend eben die (neuen) Methoden aufrufen.

Ich glaube, ich entscheide mich für das letztere erstmal (außer es findet sich hier noch eine bessere option) und werde damit zunächst mal ein Testprojekt realisieren. Dann sieht man ja, wie das funktioniert.

Ggf. werde ich auch das mit der reflection mal testen. Sofern sich das in Grenzen hält, wäre das auch eine interessante Lösung. Denke, dass wird sich in einem (anderen) Testprojekt zeigen.
 

schlingel

Gesperrter Benutzer
niedrigstes Api-level verwenden und mit kompatibilitätspackages arbeiten (überzeugt mich aber nicht)
Warum nicht? Das wäre der sauberste Weg. Vergiss nicht, wenn dein Projekt umfangreicher wird, wirst du schnell an die Grenzen der Geräte stoßen. Da ist jedes Rumgefrickel mit Reflection ein schmerzhaftes Penalti.

Ich setze das oben genannte Support Package ein und bin ganz zufrieden damit. Aber wenn du die Tests durchziehst, wäre es trotzdem interessant wenn du hier die Ergebnisse postest.
 
T

Tomate_Salat

Gast
Warum nicht? Das wäre der sauberste Weg.Vergiss nicht, wenn dein Projekt umfangreicher wird, wirst du schnell an die Grenzen der Geräte stoßen. Da ist jedes Rumgefrickel mit Reflection ein schmerzhaftes Penalti.
Keine Ahnung. Aber irgendwie vertrau ich denen nicht so ganz. Aber die Idee von Reflection fand ich zu Anfangs echt furchtbar, aber die wird wohl viel eingesetzt. von den Support Packages habe ich nur auf der android Seite gelesen.

Aber wenn du die Tests durchziehst, wäre es trotzdem interessant wenn du hier die Ergebnisse postest.
Würde ich auf jeden Fall ;-). Bin aber momentan noch an den Basics. Vllt fange ich dann heute mal mit einer einfachen App an.
 
T

Tomate_Salat

Gast
Ok. Also ich habe mit der "3.ten Strategie" angefangen und breche das aber ab. Je mehr ich drüber nachdenke, desto vernünftiger erscheint mir das Support Package. Warum?
- Im worst-case kann ich ~6 Api-Level eine Unterscheidung schreiben
- Ich muss bei Jeder Methode tierisch aufpassen, dass diese auch in allen Api-level verfügbar ist, oder diese auslagern (auch wenn man das über die references sehr gut sehen kann, ist mir das zu fehleranfällig)

[EDIT]
Einiges entfernt, da ich offensichtlich keine Ahnung vom Support-Packages habe/hatte:autsch:
[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Soloeco Android Multiple Activities - AndroidManifest Android & Cross-Platform Mobile Apps 4
B Android Multiple Screens- layout-sw600dp Android & Cross-Platform Mobile Apps 1
Miguel Gonzalez Android Anfaengerproblem: Multiple Custom Views in Custom Views Android & Cross-Platform Mobile Apps 2
T Lesen / Schreiben einer Textdatei - SD-Karte Android & Cross-Platform Mobile Apps 42
OnDemand Allgemeine Fragen zu einer App Android & Cross-Platform Mobile Apps 4
I Foto mit einer bestimmten Auflösung aufnehmen und als Datei ablegen. Android & Cross-Platform Mobile Apps 5
Jose05 Wie kann man mit einer App Geld verdienen? Android & Cross-Platform Mobile Apps 6
T Android Studio: Einen Button in einer For Schleife verwenden Android & Cross-Platform Mobile Apps 2
M Activity einer anderen App mit result Android & Cross-Platform Mobile Apps 2
J Android Zugriff auf eine Datei, diese von einer anderen App erstellt wurde? Android & Cross-Platform Mobile Apps 11
Mo1234 Plattform in einer App. Bitte um Hilfe! Android & Cross-Platform Mobile Apps 8
A Mit Java neues item in ein string-array einer Strings.xml schreiben Android & Cross-Platform Mobile Apps 4
P Android Wie bestimme ich den Dateinamen einer Bilddatei? Android & Cross-Platform Mobile Apps 11
B Falsche ausgabe einer Rechnung! Android & Cross-Platform Mobile Apps 8
M Android Dynamische SchriftGröße einer TextView Android & Cross-Platform Mobile Apps 3
J Android Suche in einer ListView Android & Cross-Platform Mobile Apps 3
G Android Daten in einer Datenbank speichern Android & Cross-Platform Mobile Apps 1
J Android button mithilfe einer Methode automatisch erstellen Android & Cross-Platform Mobile Apps 6
JavaWolf165 Android Fehler beim Speichern/Downloaden einer Datei Android & Cross-Platform Mobile Apps 2
S Android Probleme beim Verbinden mit einer HTTPS Seite Android & Cross-Platform Mobile Apps 4
B Android wie kann ich in einer xml nach bestimme item suchen (DOM) Android & Cross-Platform Mobile Apps 7
C Android Diese Art von Werbung in einer App? Android & Cross-Platform Mobile Apps 1
? ständig ändernden Inhalten in einer App Android & Cross-Platform Mobile Apps 2
R Android Eine Website-frame in einer App Android & Cross-Platform Mobile Apps 4
H Android Aufrufen von "setContentView" in einer anderen Klasse Android & Cross-Platform Mobile Apps 3
S Die Erstellung einer eigenen App,Kosten? Android & Cross-Platform Mobile Apps 1
M Android Speichern einer .txt Datei im InternalStorage Android & Cross-Platform Mobile Apps 2
B Fragen zum Speichern einer Datei auf dem Gerät? Android & Cross-Platform Mobile Apps 7
C Auf Play Store verlinken - Code in einer Extraklasse Android & Cross-Platform Mobile Apps 1
G Thread in einer Service erstellen Android & Cross-Platform Mobile Apps 0
B Android Spieler Steuerung auf einer Map mit Berge? Android & Cross-Platform Mobile Apps 7
M Android Quellcode einer Website Android & Cross-Platform Mobile Apps 7
K Löschen einer Tabelle bei PlayStore update Android & Cross-Platform Mobile Apps 2
H Veröffentlichung einer Bezahl-App Android & Cross-Platform Mobile Apps 5
Robat Android ConcurrentModificationException während einer for Schleife Android & Cross-Platform Mobile Apps 15
D Android EditText und TextView haben unterschiedliche größen innerhalb einer TableRow Android & Cross-Platform Mobile Apps 18
M Umlaute im Quellcode einer Website richtig darstellen Android & Cross-Platform Mobile Apps 4
M Quellcode einer Website auslesen Android & Cross-Platform Mobile Apps 5
T Android platzsparende Codierung verschlüsselter Texte in einer URI Android & Cross-Platform Mobile Apps 8
S Android "Weiches wechseln" zwischen Views in einer Activity Android & Cross-Platform Mobile Apps 3
F Bei einer Android Java App, Objekte erstellen Android & Cross-Platform Mobile Apps 2
G eine Methode einer anderen Activity aufrufen Android & Cross-Platform Mobile Apps 9
G Einbinden einer Bibliothek's App Android & Cross-Platform Mobile Apps 2
G Daten von einer Activity zur nächsten übergeben Android & Cross-Platform Mobile Apps 6
A Fehler beim Starten eines Intents - alles in einer Klasse funktioniert... Android & Cross-Platform Mobile Apps 4
A Kann nicht in TextView einer anderen Klasse schreiben - wieso? Android & Cross-Platform Mobile Apps 9
A Beenden einer 2ten Activity Android & Cross-Platform Mobile Apps 3
R Android Unterschiedliche Versionen von Android in einer App Android & Cross-Platform Mobile Apps 7
D Mehrere Kopien von einer Form Android & Cross-Platform Mobile Apps 7
M Wie in einer anderen "nicht canvas" klasse zeichne Android & Cross-Platform Mobile Apps 5
S Problem mit Einbindung einer externer Bibliothek Android & Cross-Platform Mobile Apps 2
S Variable Anzahl von Bytes aus einer Datei lesen Android & Cross-Platform Mobile Apps 2
P Erstellen einer Jar-File Android & Cross-Platform Mobile Apps 2

Ähnliche Java Themen

Neue Themen


Oben