jeudi 20 mai 2010

La communication inter-application s’étend dans Android 2.2

édit : Après vérification, il semblerait qu’effectivement il soit nécessaire d’être identifié avec un compte Google.

L’une des forces de l’OS embarqué Android, c’est la possibilité de communiquer d’une application à l’autre grâce au mécanisme des intent.

C’est cette notion qui vous permet, par exemple, de partager une image via une application twitter, via une application de mail, via une application de messagerie instantanée, ou autre, et ce, sans avoir à y réfléchir un seul instant : vous ne quittez pas l’application. Vous faites simplement “partager” et une liste d’application qui supporte cette fonctionnalité apparait ! Ce sont les applications qui sont capables de recevoir un message du type “partage d’image”, pour schématiser un peu.

Et bien à partir d’Android 2.2, ce mécanisme s’étend ! Il est dorénavant possible pour une application Android de recevoir un message non plus d’une autre application Android comme auparavant, mais d’une autre application tout court !

Typiquement, une extension Google Chrome pourrait vous permettre de partager un lien depuis votre ordinateur vers votre téléphone portable ou votre tablette Android.

C’est aussi de cette façon là que la version mobile de l’Android Market a été développée et c’est ce qui lui permet d’installer à distance des applications sur votre terminal Android (télévision, téléphone, … ).
Android Market web

Mais alors pourquoi ce type de fonctionnalité n’apparait-il que maintenant alors que le mécanisme est le même qu’avant ?

Je vais vous répondre grâce à une autre question : Comment votre navigateur, sur votre ordinateur, fait-il pour savoir à quel téléphone envoyer son message ?

La réponse n’a pas été donnée pendant la conférence de Google mais elle semble pratiquement évidente : votre compte Google. Il s’agit du seul dénominateur commun entre votre mobile (muni de l’Android Market) et le web, ou toute autre application Desktop.

En effet, si vous utilisez l’application Android Market, vous vous êtes nécessairement connectés à l’aide de votre compte Google. De fait, dorénavant, n’importe quelle utilitaire peut, si vous êtes identifiés, envoyer un message (une intent, rappelez-vous) à Google qui transmettra au téléphone avec lequel vous êtes identifiés.

Si vous êtes identifiés sur plusieurs terminaux (votre tablette, votre TV et votre téléphone par exemple), a priori, deux comportement sont possibles : on envoit l’intent à tout les terminaux, ou alors on propose de sélectionner.

Mais cela signifie-t-il que l’on est obligé d’utiliser son compte Google ?

C’est la grosse inconnue. Techniquement, 99% des utilisateurs d’un terminal Android doté des applications Google utilisent leur compte Google, ne serait-ce que pour le market. Néanmoins, dans la théorie, étant donné qu’il est parfaitement possible d’avoir un market alternatif (et il en existe d’ailleurs beaucoup), on est quand même libre de ne pas utiliser son compte Goole.

En effet, dans ce cas là, aucune fonctionnalité n’est retirée : on peut toujours installer des applications.

De là, deux cas de figure : soit il est parfaitement possible de remplacer la brique logicielle permettant d’identifier le téléphone (par exemple identifier le téléphone via Facebook ou via Twitter au lieu de l’identifier via Google), ce qui va dans l’esprit initial d’Android ; soit, ce n’est pas possible et Google fait appel à des API privées pour la première fois, bridant donc les fonctionnalités pour les utilisateurs n’ayant pas de compte Google.

Évidemment, il est difficile de répondre sans avoir au préalable examiné le SDK d’Android 2.2, ce que je n’ai pas encore eu le temps de faire, mais pendant la conférence on a déjà pu constaté un cas flagrant d’usage d’API privées :

Lorsque l’on installe une application Android via la page web de l’Android Market, à aucun moment l’utilisateur ne semble valider les permissions de l’application sur le terminal Android (à moins que j’ai loupé ça, évidemment) or ce comportement n’est pas possible via le SDK tel que nous le connaissons.

Aucun commentaire:

Enregistrer un commentaire