Android; y at-il des changements entre 2.1 et 2.2 que les développeurs doivent être conscients avec compatibilité ascendante?

StackOverflow https://stackoverflow.com/questions/3890218

Question

J'ai créé quelques applications qui ont été ciblées contre 2.2

Je pense à investir dans un téléphone pas cher pour les essayer (émulateur jusqu'ici utilisé seulement). Le combiné est en cours d'exécution, je veux verion 2.1 d'Android.

D'un point de code d'un point de vue, est-il des changements majeurs entre 2.1 et 2.2 qui pourraient me causer un problème?

Je comprends qu'il y aurait des problèmes si je tentais de déployer un combiné 1.x (tels que les personnes / ContractsContact etc) mais je ne vois rien à dire une application 2.2 échouerait environnement 2.1

(je pourrais essayer de changer la cible de l'émulateur, mais curieux de savoir des autres avec des combinés réels)

Merci

Était-ce utile?

La solution

Voici la page qui pourrait être utile pour vous: http: // développeur. android.com/sdk/api_diff/8/changes.html

Vous pouvez recouper tous vos paquets et les méthodes utilisées pour la liste des différences.

Comme Juhani dit, si votre application utilise l'une des nouvelles API, alors cela signifierait une forte possibilité de vos problèmes rencontrent.

Autres conseils

Vous pouvez tout simplement cibler votre application 2.1 si vous n'avez pas besoin des nouvelles API fournies avec 2.2. De cette façon, vous pouvez être sûr qu'il fonctionnera sur 2.1 et 2.2. Si vous, d'autre part, ont besoin de quelques-unes des nouvelles API, il ne fonctionnera pas correctement sur 2.1.

Vous pouvez se nouveautés en 2.2 ici: http://developer.android.com/sdk/android-2.2.html

Pour une compatibilité garantie, vous devez simplement définir votre version cible à 2,1 et recompiler pour voir ce qui échoue. Si vous utilisez une API 2.2 uniquement, cela vous montrera ce qu'il est. Ensuite, si vous voulez vraiment l'utiliser, vous pouvez réinitialiser la version cible à 2,2 et un code de comportement de repli pour « méthode introuvable » en 2.1.

En dehors de l'API documentée, la plus grande différence pour la plupart des développeurs est pour ceux qui utilisent une commune, mais l'interface non prise en charge. Si vous essayez d'invoquer le calendrier, vous trouverez qu'il cesse de fonctionner parce que l'ancien intention « com.android.calendar / com.android.calendar.LaunchActivity » a été remplacé par « com.google.android.calendar / com .android.calendar.LaunchActivity ». (Ceci est pour le stock android. Téléphone / fournisseurs de matériel ont d'autres applications alternatives / intentions, juste pour vous garder sur vos orteils.)

Bien sûr, cela est un problème que si vous utilisez des interfaces non documentées, non pris en charge, que vous ne devriez pas faire. Cependant, cela a probablement été la première source de « cassé par FroYo » apps.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top