Le code source d’Android 3.0 et 3.1 (Honeycomb) ne sera pas livré à la communauté. Il faudra attendre Ice Cream Sandwich…. au quatrième trimestre.

Un avantage d’Android est que le système est opensource. Concrètement, cela signifie que le code source est distribué à tous ceux qui le souhaitent. Plus exactement, seule la partie système d’exploitation est fournie, car les applications Google (dont l’Android Market) restent dans un format propriétaire. Cette politique est très souvent mise à avant et ce même avec un tweet d’Andy Rubin, le père d’Android :

mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/manifest.git ; repo sync ; make

Cette commande permet de récupérer directement le code source d’Android depuis le dépôt officiel. Il s’adressait clairement aux détracteurs du système qui affirmaient qu’Android était un faux modèle open source. Mais depuis Honeycomb, Google ne veut surtout pas que des téléphones utilisent cette version. La raison ? Une optimisation pour les tablettes (et maintenant la Google TV). Les possesseurs de téléphones auraient alors une mauvaise expérience, ce qui dégraderait l’image d’Android. Pour avoir un vrai système compatible avec tous les appareils, il faudra se tourner vers Ice Cream Sandwich.

Mais distribuer le code n’est pas une obligation. A partir du moment où la base du système est déjà en ligne, il peut se permettre de tels agissements. Cela déplait à la communauté, mais n’enfreint pas les lois régissants les licenses open-sources.

Hier, à la conférence Android à la Google I/O, plusieurs interlocuteurs ont martelé qu’Android était et restera open-source. Après cet événement, le jeu des questions/réponses a alors eu lieu. Andy Rubin y était présent et a répondu à une question sur ce sujet (attention la réponse est très floue) :

« Je m’attendais à ce que quelqu’un pose cette question. Donc, je vous remercie beaucoup de l’avoir posé. Vous pouvez maintenant rentrer dans l’histoire comme étant l’homme ayant posé la question à Andy Rubin. Opensource est différent d’un projet mené par la communauté. Android met la lumière sur les apports de la communauté, mais est un peu plus lourd sur le côté opensource.

Tout ce que nous faisons se trouve dans le dépôt open source. Cela intervient dans le monde opensource, lorsque le premier appareil est prêt, faisant tourner cette plateforme, mais laissez-moi vous expliquer le scénario. Nous construisons une plateforme, nous ne développons pas une application. Quand vous créez une plateforme, les développeurs ont un écosystème d’APIs ; ils en ajoutent, en déprécient. Nous ajoutons régulièrement des fonctionnalités…

Alors, généralement quand nous ajoutons une nouvelle API, à mon avis, les projets communautaires ne fonctionnent pas, parce qu’il est très difficile de dire que c’est fini, il est vraiment difficile de dire quand vous devez sélectionner entre ce qui sort [NDLR : est accepté] et ce qui rejeté. Quand vous développez une plateforme, cela ne fonctionne pas parce que les développeurs doivent attendre que toutes les APIs soient bonnes et complètent à une certaine date. S’il s’agit s’agit d’un processus communautaire, un fabricant OEM ou un opérateur ou une personne qui pourrait prendre ces APIs avant qu’elles soient verrouillées, démarrent des processus de création d’appareils avec ces appareils, qui pourront être incompatibles avec les applications tierces.

Alors en tant que berger de cet écosystème, nous avons pris la décision de libérer la plateforme 1.0, 2.0 et 2.1 et nous pouvons faire en sorte que ces APIs sont sur tous les appareils en même temps.

Je pense qu’il est de notre travail, de notre responsabilité, de veiller à ce que tout cet écosystème reste cohérant.

Un projet communautaire est toujours plus difficile à gérer. Nous acceptons encore les soumissions [NDLR : de codes], nous gardons de nombreuses soumissions de la part de la communauté, mais d’une manière beaucoup plus contrôlée. »

Bref si vous n’avez rien compris à tout ce discours, il ne veut pas que la communauté utilise ce code qui n’est pas encore terminé. Cela entrainerait des incompatibilités qui pourraient empêcher des applications tierces de fonctionner. Mais il faudra attendre la sortie d’Ice Cream Sandwich, pour qu’un code « correct » puisse être envoyé à tous. Mais il faut rappeler qu’il ne sera disponible qu’au quatrième trimestre…

L’inconvénient est qu’à l’heure actuelle Honeycomb est encore buggé. Si le code avait été distribué, des personnes auraient pu le patcher pour obtenir de biens meilleurs produits. Google préfère pour l’instant ne pas donner un code final, plutôt qu’une copie qui sera modifiée en profondeur d’ici à la prochaine version.

Source : PC Mag