Chromium pour Android / Snapdragon

Trouver un navigateur convenable sous Android peut sembler compliqué. Pardon, est compliqué. Probablement pour une raison principale : Google Chrome est préinstallé sur quasiment tous les ordiphones grand public (sans possibilité de le dégager, vu qu’application système [à moins de rooter le téléphone, pas recommandable à une majorité]). Quant à Chromium, personne ne le connaît…

Du côté de la concurrence, c’est loin d’être la panacée. Firefox est assez moche, (trop) loin du « material design » des dernières versions d’Android, pas évident à dompter et surtout bien trop lourd.

Restent les moult navigateurs qui promettent monts et merveilles, rapidité, économies de batterie, respect de la vie privée, et parfois même retour de l’être aimé. Ceux-là, ils sont pléthore sur le Play Store, et sur F-Droid (mais au moins ces derniers ont le bon goût d’être libres).

 

Mais sinon : vous saviez qu’il existait une version de Chromium spécialement optimisée pour les processeurs Snapdragon, qui équipent de très nombreux smartphones ? :mrgreen:

 

Chromium, c’est quoi ?

On commence par de rapides rappels, histoire de remettre les pendules à l’heure.

Chromium, c’est un logiciel open-source qui sert de base à Google Chrome. Il ne contient juste pas les portions de code propriétaires (certains codecs audio/vidéo, Adobe Flash Player, etc), ni le tracker publicitaire de Google, et quelques autres bricoles. Globalement, Chromium est plus léger et rapide que Mozilla Firefox, du moins pour l’usage que j’en ai au quotidien.

 

Qualcomm, CAF, Snapdragon… Ayé j’suis perdu

Qualcomm, c’est (surtout) un fabricant de micro-processeurs pour les téléphones portables. C’est par exemple cette société qui a inventé la technologie CDMA eu 1989, aux États-Unis. C’est également, pour l’anecdote, l’entreprise qui souhaite faire interdire l’iPhone aux États-Unis ! 😉
Bref, Qualcomm, c’est 49% de parts de marchés de processeurs pour smartphones, devant Apple (13%) et Samsung (12%) [chiffres 2013].

Snapdragon, c’est le nom commercial de la plus importante des familles de SoC (System-on-a-Chip, le processeur) pour smartphones, utilisant le jeu d’instructions ARM. On en trouve dans les smartphones et tablettes de tous poils. Les Snapdragon intègrent également un processeur graphique, de son petit nom Adreno, lui aussi sorti des usines Qualcomm.

Enfin, CAF. Si vous bidouillez un peu votre téléphone Android, vous vous souvenez peut-être d’une période où les noyaux se sont « scindés » en 2, « AOSP » et « CAF ». AOSP (Android Open Source Project) correspond au noyau développé par Google pour l’ensemble des smartphones, et CAF (Code Aurora Forum) correspond à celui développé par une équipe de développeurs tierce plus spécifiquement pour le matériel Qualcomm. Code Aurora est maintenu par la Fondation Linux, et surtout, c’est là que Qualcomm publie les sources correspondant à leurs différents matériels. Du coup, pas mal de fabricants préfèrent partir de ce que fournit Qualcomm. Seems legit.

 

Le rapport entre CAF et Chromium ?

Parmi les nombreux projets développés par le Code Aurora Forum, il y a… une version de Chromium basée sur l’originale, avec quelques ajouts, et surtout des optimisations pour mieux fonctionner sur les ordiphones équipés d’une puce Snapdragon. Si si.

Actuellement, la version la moins stable en développement est la version 59 de Chromium, et vous pouvez installer sans soucis la version 58 (code source).

On va pas se mentir, compiler un navigateur pour son mobile n’est pas à la portée de madame Michu, et même quand on a la compétence pour le faire, on n’a pas toujours l’envie (ou le temps) de le faire. Heureusement pour nous, un membre du forum XDA a non seulement fait des builds pour nous, mais en plus il a créé une petite application qui va vérifier si une nouvelle version existe et l’installer pour vous ! Les ressources, donc :

 

Mais ça change quoi que ce soit optimisé ?

Déjà, les performances. Je ne retrouve plus le lien, mais j’ai lu un test qui en parlait, pour une amélioration somme toute significative. Un test sur XDA a comparé l’application Google Dev (du Play Store) avec Chromium SWE (ouais c’est le nom mignon de notre Chromium modifié, SWE pour Snapdragon Web Engine) et le test SunSpider retourne 996.7ms +/-17.5% pour Chrome, contre 761.6ms +/-13.8% pour Chromium SWE. C’est franchement pas mal.

Ensuite… les fonctionnalités ! 😉
Au menu des choses absentes du Chromium « normal » :

  • un mode nuit. C’est con, mais pratique le soir. Qui sait, ça peut même vous éviter d’éloigner le portable de vos yeux chafouins pour ne pas être ébloui, et finalement lâcher le téléphone que vous allez prendre sur le groin (et ça fait mal).
  • un bloqueur de publicités. OUI. Un truc qui fonctionne bien, sans besoin d’un téléphone rooté ou bidouillé à outrance.
  • un mode d’économie d’énergie, qui limite le nombre de cœurs actifs dans le processeur ainsi que leur fréquence d’horloge. Plus d’infos sur ces mécanismes ici.
  • la partie « Téléchargements » a été revue, on peut choisir la destination de chaque fichier par exemple. OK ça vous semble basique (sur PC), mais sur mobile, c’est dans /sdcard/Downloads/ et c’est marre, en général, tant pis pour vous si vous vouliez enregistrer ce MP3 ailleurs.
  • navigation par les bords : si vous glissez votre doigt boudiné depuis le bord gauche de l’écran vers la droite, vous revenez à la page précédente. Idem en inversant le sens du mouvement, ça repart à la page suivante.
  • une gestion très fine des autorisations propres à chaque site visité.

D’autres fonctions sont présentes, mais pas nécessairement activées, en fonction de vos choix lors du premier lancement :

  • « Safe browsing » : comme sur Chrome, en gros, puisque c’est la même liste qui est chargée pour bloquer pour vous les sites malveillants (virus, phishing…)
  • « WebRefiner » : cet outil permet de filtrer une partie du contenu des pages que vous visitez, dont la publicité citée plus haut. Il supporte par exemple les listes EasyList (comme AdBlock) et vous permet de mettre en place vos propres filtres et exceptions.
  • « WebDefender » : module permettant de moduler la profondeur d’encu la quantité de données personnelles que vous consentez à filer à Google, Facebook et autres. Aspect sympa : cette fonction est basée sur l’outil « Privacy Badger » de l’EFF. Elle permet de filtrer les cookies, le « canvas fingerprinting »…
  • « XSSDefender » : ce module tentera de vous protéger contre certaines formes d’attaques transitant par des sites web, en particulier via javascript et les fameuses XSS.
  • « Secure-Connect » : cet élément repose sur le module « HTTPS Everywhere » de l’EFF (encore –normal, ils font du bon boulot). Il fera en sorte d’utiliser HTTPS pour vos connexions aux sites web visités plutôt que du simple HTTP, de façon transparente pour l’utilisateur.

Avouez que ça a d’la gueule !

D’autres navigateurs ont tenté le coup…

Citons ici pour mémoire « Gello », feu le navigateur web intégré à CyanogenMod, une distribution Android alternative dont l’un des objectifs était également la protection de la vie privée. Si les sources de Gello existent encore, elles ont été jugées difficilement maintenables par l’équipe en charge du développement de LineageOS (qui a pris la suite de CyanogenMod, mais c’est une autre histoire), qui a préféré repartir d’une base plus propre.

Gello peut être compilé à partir des sources, sans souci, mais n’est plus activement maintenu. Dommage, je l’aimais bien, vraiment. Sa disparition a laissé un vide que je cherche à combler, d’où cet article ! 😉

 

Tout jeune, Jelly (notez l’originalité du nom) est le remplaçant de Gello. Si son apparence est nettement plus fraîche et actuelle, toutes les fonctions de Gello ne sont pas encore fonctionnelles. Il est stable, fait le job d’un navigateur basique (pour ce que je m’en sers ça suffit presque, et ça répond aux attentes de pas mal de gens je pense) sans sourciller. La gestion des onglets est celle introduite par Chrome il y a quelques temps : un onglet égale une tâche dans les applications Android. C’est surtout ça qui ne me convient pas, mais bon ! Notez qu’il intègre déjà « LookLock », cette fonction qui verrouille l’accès à ce qui est affiché dans le navigateur par une autre application, pour protéger votre intimité. Les sources sont ici, et je vous invite à tester LineageOS pour le voir ! 😀

 

Et vous, vous utilisez quel navigateur et pourquoi ? 🙂

 

 

5 réflexions sur “ Chromium pour Android / Snapdragon ”

  • 1 juin 2017 à 12 h 15 min
    Permalink

    Bonjour,

    Moi j’utilise Tint Browser, il n’a pas beaucoup d’autorisations nécessaires 🙂

    Confidentialité; Position approximative (réseau), modifier/supprimer contenue mémoire USB, voir contenu de la mémoire USB

    Accès à l’appareil; Bénéficier d’un accès complet au réseau, Se connecter aux services des addons de Tint Browser.

    Pour chromium:
    -> 21 autorisations en plus quand même !

    L’as tu testé ?

    Sonic

    Réponse
    • 1 juin 2017 à 20 h 00 min
      Permalink

      Hello ! 🙂

      Je le connais de nom, mais je ne l’ai pas testé : en faisant le tour dans F-Droid, j’ai vu qu’il n’était pas mis à jour depuis 2014… Du coup même pour une version « améliorée » du navigateur de base, je me suis dit que Jelly serait plus actuel et à jour… Peut-être à tort, j’en conviens ! Après tout, l’essentiel est qu’il réponde à l’usage qu’on en fait. Mais niveau sécurité ça me pose des questions quand même !

      Pour les autorisations, effectivement c’est également un point important. Je reconnais que je fais « moins attention » qu’avant, puisque ma LineageOS est configurée pour tout bloquer, sauf ce que j’autorise au besoin, parfois même au coup par coup. Chromium peut avoir besoin de plus d’autorisations selon les applis web utilisées, surtout s’il est synchronisé avec un compte Google. Dans mon cas, il ne me demande pas grand chose.

      Les autorisations de Jelly sont les suivantes : Position via réseau et/ou GPS, Accéder au stockage interne et/ou USB, accès réseau complet, afficher les connexions réseau, et installer des raccourcis. C’est contenu également, j’aime ! 😉

      Tu utilises Tint Browser avec quelle version d’Android ?

      Réponse
      • 5 juin 2017 à 21 h 24 min
        Permalink

        J’utilise Tint Browser sur Android 5.0 (Motorola Moto X 2e version) non rooté.

        En septembre, je vais acheter un smartphone en Chine, j’ai 300€ de budget voir plus.
        Je pensais prendre un Huawei mais d’autres marques m’intéressent aussi, qu’en penses tu ?

        J’aimerai un téléphone avec une grosse communauté XDA et avec la possibilité de ne pas utiliser Google (Ni trop d’intrusion dans ma vie privée 🙂

        Quels équivalents comme Replicant,OmniRom, AOKP, Paranoid, ResurrectionRemix pour les smartphones asiatiques ?

        Réponse
  • 6 juin 2017 à 13 h 59 min
    Permalink

    Bonjour,
    Bel article qui pose bien les choses.

    J’ai testé au moins 5-6 navigateurs basés sur le code Aurora. Chacun d’entre eux ajoutait des petites fonctionnalités mais aucun gars n’a dénié poster le code modifié…
    Sur XDA, j’avais découvert cette version pure CAF : https://forum.xda-developers.com/android/apps-games/app-code-aurora-swe-browser-m55-t3523365
    Je l’ai donc adopté jusqu’à récemment basculer sur cet updater (qui pourrait clairement être amélioré au passage).

    Côté Téléchargements, je ne peux pas choisir le dossier contrairement à ce que tu écris. C’était possible avec Gello en revanche.

    Mon navigateur numéro reste Firefox et je passe par Firefox Focus (Webkit ou Gecko) en navigateur secondaire.
    Mon « SWE » est relayé au dernier plan désormais. Je privilégie toujours la vie privée et la sécurité, même s’il faut attendre 1 seconde de plus pour que la page web s’affiche 🙂
    PS : il est clair que Mozilla devrait se concentrer sur l’amélioration de son navigateur s’ils ne veulent pas continuer à perdre des parts de marché.

    Enfin, j’évite tout navigateur reposant sur le WebView de Google.

    Réponse
  • 13 décembre 2017 à 12 h 30 min
    Permalink

    J’alterne entre Chromium SWE Updater et Fennec F-Droid, tous les 2 provenants de F-Droid

    Je trouve la gestion des onglets plus pratique avec Fennec, et j’ai installé l’extension uBlock Origin pour bloquer les nuisances

    Par contre, le défilement des pages est plus pratique avec Chromium, avec Fennec c’est assez pénible de faire défiler jusqu’en bas une page très longue

    Ce qui me manque, c’est la barre de défilement qui apparaissait dans le navigateur par défaut de la ROM d’origine (MIUI) de mon smartphone Xiaomi Redmi Note 4. Je suis maintenant sous LineageOS for MicroG (https://lineage.microg.org/), excellent d’ailleurs !

    Réponse

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *