Sur le blog officiel d’Android, le Android Developers Blog, Google avait publié quelques jours le nouvel SDK en expliquant qu’ils avaient du enlever certaines API du SDK sans donner d’autres explications. En autres le service GTalkService ainsi que la compatibilité Bluetooth. Étonnement du côté des développeurs, et besoin d’explication de la part de Google. Voilà que ce matin, l’explication vient d’être publiée sur ce même blog…

Concernant le GTalkService, il semble avoir été enlevé pour plusieurs raisons. Premièrement, car il faut dicerner la différence entre Google Talk et GtalkService. Google Talk est une messagerie instantanée qui permet de communiquer avec ses amis. Il y a une différence générale avec GTalkService qui permet de communiquer de façon plus large. Par exemple, imaginez un chouette jeux de rôle massivement multijoueur qui permet de se connecter au service GTalkService. Vous jouez et rencontrez des joueurs, vous formez une guilde. Et là, vous vous arrêtez pour vous connecter sur GTalk afin de parler de vos sortie cinéma de ce soir avec vos amis. Et là, 10 nouveaux amis avec qui vous avez joué sur le MMORPG… Bref, ce service n’est pas idéale pour les discussions dites « anonymes ». Le second argument est un problème de sécurité concernant l’identité de l’utilisateur. Il existe bien un multitude de service pouvant communiquer avec le GTalkService, et au final il s’agit réellement d’un problème de sécurité quant à votre téléphone et surtout votre identité. Bref, ce n’est pas vraiment adapter à un Remote Procedure Call (RPC). Pour terminer, malgré les corrections, GTalkService peut être une charge trop importante pour les développeurs, et surtout un problème de sécurité.

Google a donc décidé de retirer l’API GTalkService pour le moment, afin de le rendre plus sûr.

Afin de rassurer tout de suite ceux qui se posaient la question, quant à l’utilisation d’oreillettes Bluetooth sur la version 1.0, il sera bien évidemment possible d’utiliser ces oreillettes. Google a simplement retiré l’API permettant d’utiliser la fonction Bluetooth dans les applications. Ils appliquent célà par l’arrivée de bluez 4.x, une nouvelle version du Bluetooth possédant son propre API. Cette version oblige donc Android à structurer différemment leur API. Ils préfèrent donc favoriser une base propre et modulable pour l’avenir. L’API Bluetooth ne devrait pas tarder dans les versions à venir.

Afin de faire saliver les quelques développeurs qui lisent ce blog, voilà ce qu’ils ont annoncé :

  • Bindings to GAP and SDP functionality.
  • Access to RFCOMM and SCO sockets.
  • Potentially, L2CAP socket support from Java. (This one is under consideration.)
  • An API to our headset and handsfree profiles.

Pour Google, la fonction Bluetooth est sous-utilisée sur la plupart des téléphones actuels, ils voudraient donc pouvoir rendre cette fonction accessible aux développeurs.

En conclusion, pour Google les raisons sont là : sécurité et protection de la vie privée. Mais ce qui me semble ressortir de ce post, c’est plutôt un manque de temps et un planning à respecter absolument. Enfin, ne vous inquiétez pas, les prochaines versions verront bien ces API revenir… 😉

Plus de détails par là.