2010-09-23 6 views
30

Wie soll ich die Wahl treffen? Was sind die Parameter, die ich berücksichtigen sollte?Welche Version von Android sollte ich entwickeln?

+0

Angesichts der Geschwindigkeit der Android-Versionen wären alle hier gegebenen Informationen mit 6-12 Monaten veraltet. Also meine Stimme zu schließen. –

+2

Nicht, wenn Sie die Informationen wiederverwenden können, um auch in Zukunft eine Auswahl zu treffen. –

+1

Beachten Sie, dass "Entwickeln für alte Versionen" nicht dasselbe ist wie "Targeting an eine alte API". Sehen Sie sich dieses Zitat aus der Dokumentation an: "Sie können Ihre App weiterhin so erstellen, dass sie ältere Versionen unterstützt. Wenn Sie jedoch das Build-Ziel auf die neueste Version setzen, können Sie neue Funktionen aktivieren und Ihre App für eine optimale Benutzererfahrung auf den neuesten Geräten optimieren." Quelle: http://developer.android.com/training/basics/firstap/creating-project.html –

Antwort

4

Wenn möglich, sollten Sie die älteste noch weit verbreitete Android-Version unterstützen. Das wäre 1,5. Wenn Sie Funktionen aus späteren Versionen benötigen, sollten Sie möglicherweise neuere Versionen in Erwägung ziehen. Wenn Sie jedoch mit der ältesten noch verfügbaren Version arbeiten können, sollten Sie die Anzahl der Personen erhöhen, die Ihre App verwenden können.

12

berücksichtigen Werfen Sie einen Blick auf Android versions market share. Ich würde für 1.6+ entwickeln. Wenn Sie in der Mitte der Entwicklung erkennen wird, dass Sie einige API-Funktion von neueren Version wollen, werden Sie 3 Möglichkeiten:

  1. Verwenden Sie nicht diese Funktion
  2. Android-Version aus dem App erkennen und dann entscheiden, was zu tun
  3. ändern erforderlich Android-Version in Ihrer Manifest-Datei und Projekteinstellungen
3

ich mit den Antworten gepostet oben zustimmen, und ich möchte, dass Referenzseite auf dem Android-API hinzufügen, die meiste Zeit Niveau der Mindest API wird angegeben (http://developer.android.com/reference/android/package-summary.html). Sie können auf dieser Seite die Android-Version für eine bestimmte API-Ebene ermitteln: http://developer.android.com/guide/appendix/api-levels.html

+1

plunx dun refeer zu "dem Beitrag oben", da sich die Reihenfolge ändert, wenn Leute über Beiträge abstimmen. – pgsandstrom

4

Die älteste Version, die alle Funktionen unterstützt, die Ihre Anwendung erfordert.

Zum Beispiel: Ihre App braucht Multitouch? Zielversion 2.1

Meine Anwendung benötigt keine Funktionalität in neueren Versionen eingeführt, so dass ich Ziel 1,5

+0

Und wie gut ist Vorwärtskompatibilität? – Robert

3

Ich persönlich alles für 2.1 zu entwickeln. Es gibt nur eine Handvoll Geräte, die immer noch laufen < 2.0 und die meisten dieser Leute haben bereits benutzerdefinierte ROMs auf sie bereits gesetzt. Ich weiß, dass es Leute mit älteren Handys schraubt, aber ich mag die Idee nicht, meine App zu lähmen, nur um sie rückwärtskompatibel zu machen.

Auch fühle ich mich wie die Entwicklung für> 2,0 Menschen ermutigt, ihre Telefone zu aktualisieren = P

2

@Falmarri: Ich habe einige Fehler in der Logik zu sehen. Normalerweise tendiere ich dazu, dem gleichen Weg wie du zu folgen, wenn ich auf einer anderen Plattform wie Windows entwickle. Ich mache meine C# -Anwendungen immer gegen die neueste (Nicht-Beta) -Version, da das .NET Framework für jedermann frei verfügbar ist (nehmen Sie die neuen Versionen heraus, die nicht für Win2k verfügbar sind, das jetzt fast 10 Jahre alt ist).

Mit Android funktioniert dieser Versuch nicht. Ein Großteil der Geräte, die mit 1.5 und 1.6 arbeiten, tun dies, weil es für dieses Gerät kein Update gibt, da der Hersteller keine neuen Versionen für dieses Telefon entwickelt hat (um Benutzer zu motivieren, ein neues zu bekommen) oder weil es zu zeitintensiv ist mache Backports zu diesen "alten" Geräten.

So verwendet dies nicht die "freie Wahl" der Aktualisierung ihrer Telefone. Technisch ist es natürlich möglich, dass rootierte/benutzerdefinierte ROMs verwendet werden, die meisten Benutzer verfügen jedoch nicht über das technische Wissen, um ihre Geräte mit benutzerdefinierten ROMs zu rooten/flashen oder möchten ihre Garantie nicht verlieren.

Wenn Sie also Ihre App so vielen Menschen wie möglich anbieten möchten, müssen Sie sie mit einer viel älteren Version des Betriebssystems entwickeln. Im Fall von Android, gegen 1.5.

Und das ist im Grunde, was ich tue. Ich habe meine Apps mit 1.5 gemacht.

0

Wenn Sie mit Android Studio arbeiten: 1. Gehen Sie zu Extras -> Android -> AVD Manager 2. Klicken Sie auf die Schaltfläche Create Virtual Device ... im Dialogfeld AVD Manager. 3. Wählen Sie ein Gerät auf der Seite "Hardware auswählen" des Dialogfelds aus und klicken Sie auf Weiter. 4. In der rechten unteren Ecke der Seite „System-Image“ Assistent die folgende sehen:

API Level Distribution Chart Link

Wenn Sie die „API-Ebene Verteilungsdiagramm“ -Link, es wird Ihnen eine Zusammenfassung der kumulativen klicken Verteilung nach API-Ebene. Ich nehme an, dass die Informationen mit jeder Version auf dem neuesten Stand gehalten werden. Von dort aus können Sie auf eine API-Ebene klicken, um spezifische Informationen zu dieser API-Ebene zu erhalten. Basierend auf den dort angegebenen Informationen müssen Sie die API-Stufe 18 oder niedriger verwenden, damit etwa 75% des aktuellen Android Market Ihre Anwendung nutzen können.

API Level Distribution Chart

Vielleicht ist dies die Art der Informationen, die Sie suchen. Ich hoffe es hilft!

+0

Ein zusätzlicher Kommentar: Um das Testen von Google Play-Diensten zu unterstützen, ist die API, die Sie möglicherweise verwenden, API Level 21. – Mitselplik

+0

Diese Informationen können auch [hier] (https://developer.android.com/about/dashboards/index.html#Platform) gefunden werden, und sie aktualisieren sie regelmäßig (im letzten Monat der letzte) – DarkCygnus