Ich sehe viele Unterschiede compiledSdkVersion
in früheren Antworten, daher werde ich versuchen, hier ein wenig zu klären, indem ich der Webseite von Android folge.
A - Was Android sagt
Laut https://developer.android.com/guide/topics/manifest/uses-sdk-element.html :
Auswählen einer Plattformversion und einer API-Ebene Wenn Sie Ihre Anwendung entwickeln, müssen Sie die Plattformversion auswählen, anhand derer Sie die Anwendung kompilieren möchten. Im Allgemeinen sollten Sie Ihre Anwendung mit der niedrigstmöglichen Version der Plattform kompilieren, die Ihre Anwendung unterstützen kann.
Das wäre also die richtige Reihenfolge laut Android:
compiledSdkVersion = minSdkVersion <= targetSdkVersion
B - Was andere auch sagen
Einige Leute bevorzugen es, immer die höchste verfügbare compiledSkdVersion zu verwenden. Dies liegt daran, dass sie sich auf Codehinweise stützen, um zu überprüfen, ob sie neuere API-Funktionen als minSdkVersion verwenden. Daher wird entweder der Code so geändert, dass sie nicht verwendet werden, oder die Benutzer-API-Version wird zur Laufzeit überprüft, um sie bedingt mit Fallbacks für ältere API-Versionen zu verwenden.
Hinweise zu veralteten Verwendungen werden auch im Code angezeigt, sodass Sie wissen, dass in neueren API-Ebenen etwas veraltet ist, sodass Sie auf Wunsch entsprechend reagieren können.
Dies wäre also die richtige Reihenfolge für andere:
minSdkVersion <= targetSdkVersion <= compiledSdkVersion (highest possible)
Was ist zu tun?
Es hängt von Ihnen und Ihrer App ab.
Wenn Sie vorhaben, zur Laufzeit je nach API-Ebene des Benutzers unterschiedliche API-Funktionen anzubieten, verwenden Sie Option B. Sie erhalten Hinweise zu den Funktionen, die Sie beim Codieren verwenden. Stellen Sie nur sicher, dass Sie niemals neuere API-Funktionen als minSdkVersion verwenden, ohne die Benutzer-API-Ebene zur Laufzeit zu überprüfen. Andernfalls stürzt Ihre App ab. Dieser Ansatz hat auch den Vorteil, dass beim Codieren gelernt wird, was neu und was alt ist.
Wenn Sie bereits wissen, was neu oder alt ist, und eine einmalige App entwickeln, die mit Sicherheit nie aktualisiert wird, oder wenn Sie sicher sind, dass Sie neue API-Funktionen nicht bedingt anbieten, verwenden Sie Option A. Sie werden nicht gestört mit veralteten Hinweisen und Sie werden niemals in der Lage sein, neuere API-Funktionen zu verwenden, selbst wenn Sie versucht sind, dies zu tun.