2010-11-14 7 views
3

Je dois forcer un projet Android créé dans Eclipse pour la plate-forme 2.0 à s'exécuter sur le 1.5 AVD (émulateur). Cela est dû au fait que j'écris une application qui prendra en charge à la fois l'API Contacts et l'API ContactsContract.Exécution d'une application Android 2.x dans un émulateur 1.x

Est-ce que quelqu'un connaît le mot magique pour que cela se produise?

Répondre

0

Si nous parlons vraiment d'un projet Android (dossiers avec des fichiers source .java et tous les fichiers XML requis, etc.), cliquez avec le bouton droit de la souris sur le dossier du projet et tapez Properties. Dans la fenêtre des propriétés, sélectionnez la section Android dans le volet de gauche. Il vous suffit maintenant de sélectionner la cible de génération de projet que vous voulez utiliser et de taper Apply.

EDIT: Si vous souhaitez assurer la compatibilité ascendante pour certaines fonctionnalités, vérifiez simplement la version SDK et décidez de la procédure à suivre pour une version donnée du SDK.

int sdk = new Integer(Build.VERSION.SDK).intValue(); 

if(sdk >= 5) { 
    // do whatever you need 
} 
else { 
    // do whatever else you need 
} 
+0

Le problème avec cette approche est qu'elle supprime le support pour l'API ContactsContract, qui est nécessaire pour le projet. – Joel

+0

Oh, donc vous voulez juste avoir une application rétrocompatible ou quoi? –

+0

À peu près. Je veux prendre en charge les deux API pour la récupération des contacts. Actuellement, je maintiens deux versions de l'application, et cela me coûte en termes de ventes, car cela crée des problèmes techniques pour les utilisateurs qui ne lisent pas les instructions correctement. :) – Joel

0

Vérifiez les réponses à cette question: How to use contacts API for Android 1.x and 2.x simultaneously?

conditionnelle classloading est ce que vous cherchez, je pense. Dans ce cas, je pense que vous devez configurer votre projet en tant que projet 1.x, et qu'il devrait être généré et exécuté sur 1.x, et s'il détecte un téléphone 2.x, il utilisera l'API plus récente.

Questions connexes