Lukinator
Minimum nehme ich immer 2.1
Maximum das neueste.
Und kompilieren immer das neuste.
Ich mache das auch ähnlich, aber nur weil die Admob Bibliothek das erfordert.
Ansonsten würde ich auch gegen genau dieselbe Version kompilieren, wie der minSdk eingestellt ist, oder zumindest so, dass die XML Attribute, die du unbedingt brauchst (App2SD) verfügbar sind.
Sonst läufst du Gefahr versehentlich Funktionen aus höheren API Leveln zu benutzen und merkst das nicht zum Kompilierzeitpunkt.
Dann installiert sich das jemand auf niedrigen API Leveln und die App fliegt ihm um die Ohren.
Wenn man die Wahl hat, sollte man Compile-Time-Errors IMMER Runtime-Errors vorziehen.
Ansonsten einfach mal die aktuellen Statistiken zur Versionsverteilung bei Android angucken.
Ich würde auf jeden Fall kompatibel zu Android 2.x programmieren, sonst schließt du fast die Hälfte der Nutzer aus.
Meine Apps laufen sogar schon ab 1.6 und es gibt tatsächlich einige aktive Nutzer mit dieser Version (dreistellige Zahl).
Bisher hatte ich da nur ein einziges mal das Problem, dass eine Funktion gefehlt hat, die ich dringend brauchte und zwar das Auslesen von EXIF Daten aus JPEGs. Das mache ich dann halt per Reflection, so dass es auf 1.6 einfach nicht aufgerufen wird.
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.