Porter une application Android sur x86

Vous avez déjà une application Android utilisée sur des plateformes ARM ? Cet article passe en revue pour vous les prérequis pour qu'elle puisse tirer partie des plateformes x86.

Votre application n'utilise pas le NDK

Une application utilisant uniquement du Java Dalvik ne dépend d'aucune architecture, et est automatiquement disponible pour les périphériques x86. Vous n'avez pas besoin de republier votre application, celle-ci est déjà totalemment compatible avec les plateformes x86.

Votre application utilise le NDK

Le portage d'une application utilisant le NDK se résume en général à recompiler-repackager-republier :

1. Utilisez la dernière révision du NDK - le support du x86 a été introduit par la r6 mais a vite évolué.

2. Créez ou éditez le fichier Application.mk pour spécifier cette ligne : APP_ABI := armeabi armeabi-v7a x86
(version courte : APP_ABI := all)

20.PNG

Vous pouvez sinon passer directement cette option en argument du programme ndk-build :
$ ndk-build APP_ABI="all"

Un fois la commande ndk-build exécutée, les binaires x86 de votre application devraient apparaître dans un sous-répertoire de libs, nommé x86.

3. reconstruisez l'apk de votre application Android de manière habituelle, avec Eclipse ou ant (n'oubliez pas d'utiliser "android update project" avant de lancer ant)

4. testez votre application sur un appareil x86 ou l'émulateur Android x86.

5. Republiez votre application :

Si elle utilise le NDK, la compatibilité x86 de votre application devrait s'afficher.

Dans le cas où le portage direct de votre application nécessiterait quelques ajustements, référez-vous à cette méthodologie.
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.