2016-05-09 3 views
1

Pendant que je lisais la documentation de targetSDKVersion, j'ai trouvé un terme, c'est-à-dire "Comportements de compatibilité".Qu'est-ce que les comportements de compatibilité dans Android?

Un entier désignant le niveau d'API que l'application cible. Si n'est pas défini, la valeur par défaut est égale à celle donnée à minSdkVersion. Cet attribut informe le système que vous avez testé par rapport à la version cible et le système ne doit pas activer les comportements de compatibilité pour maintenir la compatibilité ascendante de votre application avec la version cible. L'application est toujours capable de fonctionner sur des versions plus anciennes (jusqu'à minSdkVersion).

Je ne comprends pas, quel est le comportement de compatibilité ici. Tout exemple m'aiderait à clarifier ce terme.

Répondre

1

Cela signifie que, pour targetSDKVersion et API supérieure, le code s'exécutera comme il. Pour minSdk à targetSDKVersion-1, les traductions/comportements de compatibilité descendante pourraient être effectués par le système.

Exemple:

targetSdkVersion 21 // <= Lollipop 5.x 
minSdkVersion 17 // 4.4 KitKat <= you support this version thanks to some compability behaviors (it's done by the system so you don't have to woory) 

Si votre run application sur Android 6.0 (Guimauve) API 23, puisque vous soutenez API/SDK 21, votre application fonctionnera sur Android 6.0 sans comportements compability.

Détails sur les API de comportement de compatibilité peut être trouvée ici (page 14): http://static.googleusercontent.com/media/source.android.com/en//compatibility/android-cdd.pdf

Fondamentalement, cela signifie, si vous appelez une fonction quelle que soit la version de l'API le comportement doit être le même. C'est particulièrement le cas lorsque vous publiez une nouvelle API, vous étendez, modifiez, corrigez généralement le code, ce qui ne correspond pas au comportement de la version précédente. Ainsi, pour éviter tout problème lié à la mise à jour du code, Android fournit une couche de comportement de compatibilité qui garantit le même comportement.

+0

pouvez-vous donner un exemple, donc c'est plus clair? –

+0

mis à jour ma réponse, vérifiez-le. – sonique