GNU/Linux Magazine Hors-série N°
Numéro
52

Développement Android

Temporalité
Janvier/Février 2011
Image v3
Développement Android
Article mis en avant

Résumé
Nous allons commencer par introduire les différents concepts présents dans le système Android. Quels sont les principes fondateurs de l'architecture ? Pourquoi ces choix ? Quels sont les avantages et les inconvénients ?

Dans ce numéro...


Ce hors-série a pour objectif de vous faire découvrir les fonctionnalités avancées d'Android. Ces dernières ne sont généralement pas ou peu documentées. Nous avons effectué un travail important de lecture des sources d'Android pour découvrir des trésors cachés. Ceci est le fruit d'un an d'analyse et de recherche.
Nous allons descendre dans l'architecture logicielle du système Android. Quels sont les processus en jeu, que font-ils ? Comment communiquent-ils ?
Nous allons nous intéresser à une technologie peu exploitée par les développeurs d'applications, et pourtant maîtresse de tout le framework : la communication entre les processus.
Nous allons maintenant nous intéresser au développement d'une application native, justifié par une forte volonté d'intégration.
Nous voulons proposer une liste de contacts, avec une interface la plus proche possible de la liste des contacts intégrés dans le téléphone. La particularité de notre implémentation réside dans le fait que les données des contacts sont en ligne et non dans le téléphone.
Nous allons maintenant manipuler l'application standard pour lui faire exécuter des traitements inattendus.
Nous avons une stratégie pour afficher un contact, il faut maintenant s'occuper de l'affichage de la liste de résultat d'une recherche.
Il est temps de s'occuper de l'intégration dans le framework de mise à jour des contacts d'Android.
Nous allons étudier une approche efficace pour gérer un wizard présenté sur plusieurs volets, avec utilisation des animations.
Jusqu'à présent, nous n'avons rien rédigé concernant l'annuaire LDAP. Il est temps de s'en occuper.
Il n'y a pas d'adhérence avec le fait que l'annuaire consulté soit un annuaire LDAP ou d'une autre technologie. Nous pouvons alors envisager d'ouvrir l'application pour permettre d'utiliser différents annuaires en ligne, intégrés dans la même application de consultation.
Comment tester l'application sous tous les environnements et dans toutes les situations ?
Une fois l'application déverminée, il est temps de l'optimiser au maximum, pour tenir compte des contraintes d'un terminal en mobilité, avec peu de mémoire, peu de puissance CPU et peu de batterie. Chaque instruction économisée est de l’autonomie en plus !
Nous souhaitons tirer un petit bénéfice de notre application afin de rembourser les frais de $25 demandés par Google pour pouvoir publier une application, même gratuite, sur sa place de marché. Plusieurs pistes sont possibles : vendre l'application ou y injecter de la publicité. Nous ne souhaitons pas utiliser la deuxième approche.
Pour publier une application Android, plusieurs solutions s'offrent au développeur. Plusieurs places de marché alternatives à l'Android Market de Google sont proposées, permettant de diffuser ces travaux sur des plateformes non soutenues par Google, comme les tablettes Archos (+1 million d’unités vendues !), ou exigeant des commissions moins importantes.
La sécurité d'une application Android présente deux aspects. Il faut se protéger contre une autre application malveillante qui désire exploiter notre application pour nuire à l'utilisateur, et il faut se protéger contre l'utilisateur lui-même qui souhaite pirater notre application pour ne pas dépenser les quelques euros demandés par l'auteur pour son travail.
Notre application paraît très modeste. Elle s'intègre cependant parfaitement dans l'environnement Android.
Nous avons parcouru les différentes approches pour réaliser une application Android. Les choix technologiques dépendent de la complexité de l'application, de son niveau d'intégration avec le système, de sa portabilité avec d'autres ordiphones.
Voici une sélection d’ouvrages.
Les applications web pour mobiles sont des sites spécialement optimisés pour être utilisés par des ordiphones. Pourquoi développer une application pour mobiles avec les technologies web classiques ?

Magazines précédents

Hacks, électronique & embarqué
GNU/Linux-Magazine Hors-série N°51
Hacks, électronique & embarqué
Incontournable Python
GNU/Linux-Magazine Hors-série N°49
Incontournable Python
Voyage au centre de l'embarqué
GNU/Linux-Magazine Hors-série N°47
Voyage au centre de l'embarqué
Focus sur les outils pour mieux exploiter Linux
GNU/Linux-Magazine Hors-série N°46
Focus sur les outils pour mieux exploiter Linux

Les derniers articles Premiums

Les derniers articles Premium

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Présentation de Kafka Connect

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Un cluster Apache Kafka est déjà, à lui seul, une puissante infrastructure pour faire de l’event streaming… Et si nous pouvions, d’un coup de baguette magique, lui permettre de consommer des informations issues de systèmes de données plus traditionnels, tels que les bases de données ? C’est là qu’intervient Kafka Connect, un autre composant de l’écosystème du projet.

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Body