Comment synchroniser les favoris Chrome de votre bureau avec les navigateurs Chrome tiers sur Android

Un didacticiel sur la façon de synchroniser vos favoris Chrome avec des navigateurs Chrome tiers tels que TugaBrowser. Nécessite root et constitue une méthode de synchronisation unidirectionnelle.

Au cours de l'année écoulée, les navigateurs tiers basés sur Chrome de Google ont explosé en popularité. Cette tendance a commencé après que le Code Aurora Forum (CAF) a commencé à publier Versions Chromium optimisées pour les appareils Snapdragon en octobre 2015. Les développeurs intéressés par la création du navigateur ultime et riche en fonctionnalités ont commencé à lancer le projet et à ajouter des fonctionnalités telles qu'une nuit mode, bloqueurs de contenu, modes d'économie d'énergie, prise en charge des gestes et bien plus encore, en plus de la prise en charge des favoris Chrome via Chrome Sync. API.

Les utilisateurs ont afflué vers des projets tels que le populaire Navigateur Tuga sur nos forums, car ces navigateurs offraient de nombreuses améliorations en plus des fonctionnalités de synchronisation Chrome existantes de Google qui ne sont pas disponibles dans les navigateurs non Chrome. Malheureusement, Google

désactiver l'accès des tiers à l'API Chrome Sync en janvier, invoquant un problème de sécurité. Google a déclaré que cette décision n'avait pas été intentionnellement prise pour gêner les navigateurs Chrome tiers, pour lesquels même le Chrome open source est classé comme, mais ce correctif de sécurité a d'ailleurs sonné le glas de la synchronisation des favoris pour les navigateurs Chrome tiers.

À l'heure actuelle, les navigateurs tels que TugaBrowser n'ont toujours aucun moyen de synchroniser les modifications des favoris avec Chrome Sync. Mais là est un moyen de synchroniser les favoris de votre bureau avec les navigateurs Chrome tiers, à condition que vous disposiez d'un accès root. La méthode, qui nous avons déjà posté sur ce sujet, peut être résumé en ces étapes :

  1. Ouvrez le fichier de favoris de votre navigateur Chrome tiers et copiez la valeur de la somme de contrôle
  2. Transférez le fichier de favoris du répertoire Chrome vers le répertoire de votre navigateur Chrome tiers, en l'écrasant.
  3. Ouvrez le nouveau fichier de signets et remplacez la valeur de la somme de contrôle par celle que vous avez copiée en premier.
  4. Forcer la fermeture/la suppression du navigateur Chrome tiers pour qu'il recharge ses favoris

Cette méthode de modification de vos favoris existe depuis des années pour restaurer vos favoris sur le bureau au cas où quelque chose s'est mal passé, mais utiliser ces étapes pour obtenir vos favoris sur des navigateurs tels que TugaBrowser est une application intéressante de cela vieux truc. Bien que cette méthode vous permette effectivement d'obtenir vos favoris Chrome sur votre navigateur Chrome tiers préféré, elle vous oblige à effectuez ces étapes à chaque fois que vous ajoutez un nouveau favori dans Chrome. Ce n'est certainement pas pratique du tout, c'est pourquoi j'ai essayé de automatiser ce processus.

Dans la vidéo ci-dessus, remarquez que lorsque j'ouvre TugaBrowser pour afficher mes favoris, 3 favoris s'affichent. Quand je quitte et rouvre TugaBrowser, un snack-bar s'affiche pour m'indiquer qu'un nouveau signet a été détecté ainsi qu'un bouton pour redémarrer TugaBrowser. Lorsque j'appuie sur le bouton pour redémarrer le navigateur, j'ouvre la page des favoris et je vois maintenant qu'un nouveau et quatrième signet a été ajouté. Essentiellement, j'ai automatisé les 4 étapes ci-dessus pour travailler silencieusement en arrière-plan, et je publie ici un tutoriel vous montrant comment vous pouvez également le faire !

Avant de commencer ce tutoriel, je dois mentionner quelques points :

  • Cette méthode nécessite un accès root. Il n’y a absolument aucun moyen de contourner cette exigence, désolé! Nous jouons avec des fichiers dans /data/data qui ne sont pas accessibles sans root.
  • Cette méthode est une synchronisation unidirectionnelle, ce qui signifie que tous les favoris que vous ajoutez à votre navigateur Chrome tiers ne sont pas enregistrés (et sont en fait écrasés). Vous devrez ajouter de nouveaux favoris à partir d'un navigateur Chrome sur lequel Chrome Sync est activé. J'ai étudié des méthodes pour forcer Chrome Sync à accepter les modifications de mes favoris, mais malheureusement, je ne pense pas que ce soit le cas. possible car la version de vos favoris stockée sur le serveur de Google semble toujours remplacer toutes les modifications que vous apportez. faire manuellement.
  • Cette méthode est sûr. Vos favoris ne risquent pas d'être effacés, car nous ne manipulons pas (et ne pouvons pas) modifier la copie de Google de vos favoris qui sont stockés sur leur serveur.

Si vous recherchez une méthode de synchronisation bidirectionnelle sur votre navigateur Chrome tiers, désolé, tu n'auras jamais une telle méthode. C'est la faute de Google. Si vous vous demandez "à quoi ça sert", alors ce tutoriel n'est pas pour vous. Si vous souhaitez alléger quelque peu la douleur liée à la suppression de Chrome Sync par Google, nous espérons que ce didacticiel vous sera utile.


Synchronisation unidirectionnelle des favoris Chrome pour les navigateurs Chrome tiers

Exigences:

  • Accès racine
  • Tâcheur ($2.99)
  • Synker
  • Plugin Tasker Snackbar
  • Navigateur Google Chrome

Bien que je dise que Tasker est requis, vous pourrez peut-être vous en sortir en utilisant d'autres applications d'automatisation sur le Play Store. Si vous choisissez de le faire, vous êtes seul car je n'ai aucune expérience dans leur utilisation, vous devrez donc adapter mon script vous-même. Synker est nécessaire car nous l'utilisons pour forcer un rafraîchissement manuel de vos favoris. Le plugin Snackbar Tasker n'est techniquement pas nécessaire, mais c'est ce qui fournit une barre de snack soignée qui me permet de savoir qu'il y a de nouveaux signets avec un bouton pour redémarrer l'application. Enfin, vous devez avoir Google Chrome (n'importe quelle chaîne acceptable) installé (et non désactivé) sur votre appareil car il nous fournira le fichier de favoris que nous copierons.

Encore une chose à mentionner: bien que mon tutoriel soit construit avec Navigateur Tuga à l'esprit, vous pouvez facilement faire fonctionner cela avec n'importe quel autre navigateur basé sur Chrome en modifiant quelques étapes, que je décrirai à la fin ci-dessous.

Didacticiel

Le script que j'utilise est assez complexe, avec 29 actions au total, je n'entrerai donc pas dans les détails excessifs sur la façon dont chacune d'elles fonctionne, mais sachez simplement que ce script automatise essentiellement les 4 étapes manuelles décrites au début du article.

Voici la description du profil pour ceux d'entre vous qui sont déjà des experts chez Tasker et qui souhaitent essayer de le reproduire vous-même.

Synchronisation des favoris de la CAF

 Profile: CAF Bookmark Sync (28) 

Application: TugaBrowser

Entrez: Vérifiez les favoris Chrome (27)

A1: Synker - Forcer la synchronisation [ Configuration: Forcer la synchronisation de 2 fournisseurs (s) Délai d'expiration (secondes): 0 ]

A2: Attendre [ MS: 0 Secondes: 5 Minutes: 0 Heures: 0 Jours: 0 ]

A3: Exécuter Shell [Commande: cp /data/data/com.android.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/Bookmarks Délai d'expiration (secondes): 0 Utiliser la racine: Sur la sortie du magasin Dans: Les erreurs du magasin Dans: Le résultat du magasin Dans: ]

A4: Lire le fichier [Fichier :/sdcard/Tasker/Bookmarks To Var:%json]

A5: Répartition variable [Nom: %json Splitter: "checksum ": Supprimer la base: Désactivé ]

A6: Recherche de variable Remplacer [Variable :%json2 Recherche :(?<=")[^"]+(?=") Ignorer la casse: Désactivé Multiligne: Désactivé Une seule correspondance: Activé Magasiner les correspondances dans: %checksum Remplacer les correspondances: Désactivé Remplacer par: ]

A7: Si [ %ChromeChecksum !Set ]

A8: Ensemble de variables [Nom: %ChromeChecksum À: %checksum (1) Variables récursives: Désactivé Faire des calculs: Désactivé Ajouter: Désactivé]

A9: Autrement

A10: Si [ %ChromeChecksum !~ %checksum (1) ]

A11: Ensemble de variables [Nom: %ChromeChecksum À :%checksum (1) Variables récursives: Désactivé Faire des calculs: Désactivé Ajouter: Désactivé]

A12: Exécutez Shell [Commande: cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks Délai d'expiration (secondes): 0 Utiliser la racine: sur le magasin Sortie dans: stocker les erreurs dans: magasin Aboutir à: ]

A13: Lire le fichier [Fichier :/sdcard/Tasker/TugaBookmarks vers Var :%tugajson]

A14: Répartition variable [Nom: %tugajson Splitter: "checksum ": Supprimer la base: Désactivé ]

A15: Recherche de variable Remplacer [ Variable :%tugajson2 Recherche :(?<=")[^"]+(?=") Ignorer la casse: Désactivé Multiligne: Désactivé Une seule correspondance: Activé Correspondances en magasin Dans: %checksum Remplacer les correspondances: Désactivé Remplacer par: ]

A16: Recherche de variable Remplacer [ Variable :%json2 Recherche :(?<=")[^"]+(?=") Ignorer la casse: Désactivé Multiligne: Désactivé Une seule correspondance: Activé Stocker les correspondances dans: Remplacer les correspondances: Activé Remplacer par :%somme de contrôle (1) ]

A17: Écrire un fichier [Fichier :/sdcard/Tasker/Bookmarks Texte :%json1"checksum":%json2 Ajouter: Désactivé Ajouter une nouvelle ligne: Désactivé ]

A18: Exécutez Shell [Commande: cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks Timeout (secondes) :0 Utiliser Root: activé Stocker la sortie dans: Stocker les erreurs dans: Stocker le résultat dans: ]

A19: Snackbar [ Configuration: Message: Nouveaux favoris détectés.

Bouton: REDÉMARRER

Commande: Délai d'expiration (secondes): 15 ]

A20: Si [ %sb_button ~ Bouton enfoncé]

A21: Rentrer chez soi [Page: 0]

A22: Attendre [ MS: 0 Secondes: 2 Minutes: 0 Heures: 0 Jours: 0 ]

A23: Tuer l'application [Application: TugaBrowser Utiliser la racine: Désactivé]

A24: Attendre [ MS: 0 Secondes: 2 Minutes: 0 Heures: 0 Jours: 0 ]

A25: Lancer l'application [Application: Données TugaBrowser: Exclure des applications récentes: Désactivé Toujours démarrer une nouvelle copie: Désactivé]

A26: Fin si

A27: Supprimer le fichier [Fichier :/sdcard/Tasker/TugaBookmarks Niveau de déchiquetage: 0 Utiliser la racine: Désactivé]

A28: Fin si

A29: Fin si

A30: Supprimer le fichier [Fichier: /sdcard/Tasker/Bookmarks Niveau de déchiquetage: 0 Utiliser la racine: Désactivé]

En savoir plus

Le script s'active chaque fois que Tasker détecte que vous avez entré le navigateur Chrome tiers de votre choix, dans mon cas TugaBrowser. Vous devrez activer le service d'accessibilité de Tasker afin que Tasker puisse détecter lorsque vous êtes dans le navigateur de votre choix. Cette partie peut facilement être modifiée pour fonctionner avec d'autres navigateurs basés sur Chrome, tout ce que vous avez à faire est de sélectionner le navigateur sur lequel vous souhaitez que ce script s'exécute dans le contexte d'application de Tasker.

Voici maintenant une brève description de ce que chaque ensemble d'actions de cette tâche accomplit.

  • A1-A2: synchronisez manuellement les favoris Chrome à partir du serveur de Google afin que le fichier de favoris de l'application Chrome installée soit mis à jour. Attendez 5 secondes pour vous assurer que vous disposez de suffisamment de temps pour terminer la synchronisation.
  • A3-A6: copiez le fichier de favoris de Chrome dans un emplacement temporaire, extrayez le JSON du fichier dans une variable, puis utilisez un filtre regex pour extraire la valeur de la somme de contrôle dans une autre variable
  • A7-A10: si Tasker n'a pas de variable globale %ChromeChecksum définie (c.-à-d. la première fois que vous exécutez le script), définissez-le sur la valeur actuelle. Si une valeur est définie, vérifiez ensuite si la valeur stockée dans la variable Tasker correspond à la somme de contrôle actuelle dans le fichier de signets. Si oui, passez à A11-A26
  • A11: définissez la variable Tasker contenant la somme de contrôle Chrome sur la somme de contrôle actuelle extraite du fichier de favoris
  • A12-A15 : copiez le fichier de signets de TugaBrowser dans un emplacement temporaire, extrayez le JSON du fichier, puis utilisez un filtre regex pour extraire la valeur de la somme de contrôle
  • R16 : utilisez la valeur de somme de contrôle extraite de TugaBrowser et utilisez-la pour remplacer la valeur de somme de contrôle du fichier de signets de Chrome
  • A17-R18 : pousser le fichier de signets mis à jour extrait de Chrome mais avec la valeur de la somme de contrôle de TugaBrowser dans le répertoire de données de TugaBrowser
  • A19-A26 : afficher un snack-bar nous indiquant que de nouveaux signets ont été ajoutés. Si le bouton du snack-bar est enfoncé, redémarrez TugaBrowser, sinon continuez.
  • A27-A30: supprimez les fichiers de signets temporaires avec lesquels nous travaillions et terminez la tâche

Pourquoi cela implique-t-il autant d’étapes? Malheureusement, c'est parce que nous n'avons pas de moyen simple d'accéder directement à la structure de données JSON (potentiellement volumineuse) dans le fichier. ajouter des fichiers à vos favoris via Tasker ou l'un de ses plug-ins tels qu'AutoTools sans copier le fichier et extraire son contenu dans un fichier variable. Si nous le pouvions, ce travail serait beaucoup plus condensé, mais pour l'instant c'est ce que j'ai proposé. J'ai parlé avec le développeur d'AutoTools à ce sujet, et bien qu'il ait pu mettre à jour AutoTools vers être capable de lire les données JSON à partir d'un fichier, l'écriture JSON directement dans un fichier ne pouvait pas être effectuée via le Tasker brancher.

Quoi qu'il en soit, ce script lui-même s'exécute extrêmement rapidement malgré certaines étapes qui semblent inutiles, car je Je voulais le proposer sans que vous ayez besoin d'installer des plugins supplémentaires inutiles par-dessus Tâcheur. La seule chose qui ralentit ce script, et qui explique pourquoi vous voyez un certain retard dans la vidéo, est le temps d'attente nécessaire pour Tasker pour vous assurer que vos favoris Chrome ont été synchronisés à partir des serveurs de Google avant de passer au reste du processus. scénario. Vous pouvez certainement jouer avec les commandes « attendre » dans la tâche Tasker pour réduire le délai si vous le souhaitez, mais cela dépend en fin de compte de vous.


Téléchargement, importation et configuration

Comme toujours, nous fournirons le fichier XML du profil Tasker que vous pourrez récupérer pour configurer rapidement cette configuration par vous-même. Téléchargez le fichier .prf.xml ci-dessous depuis AndroidFileHost et enregistrez-le sur votre stockage interne. Ouvrez Tasker et désactivez le mode débutant dans les préférences. Revenez à l'écran principal de Tasker et appuyez longuement sur l'onglet "Profil" dans la barre d'action en haut jusqu'à ce qu'une option "importer" apparaisse. Appuyez dessus, puis accédez à l'endroit où vous avez enregistré le fichier XML et sélectionnez-le pour l'importer.

Téléchargez le profil "Chrome Bookmark Sync" depuis AndroidFileHost

Il y a 3 étapes très, très importantes (et 1 étape facultative mais nécessaire si vous n'utilisez pas TugaBrowser) que vous devez suivre avant que ce profil fonctionne pour vous.

  1. Activer TaskeurService d'accessibilité. Vous pouvez le faire en ouvrant Paramètres et en recherchant « accessibilité ». Appuyez sur Tasker puis activez son service d'accessibilité. Ceci est nécessaire car sinon Tasker ne peut pas détecter lorsque vous utilisez TugaBrowser (ou tout autre navigateur).
  2. Choisi ton Fournisseurs de synchronisation Chrome dans Synker. Vous pouvez le faire en ouvrant la tâche « Vérifier les favoris Chrome », puis en appuyant sur l'action n°1 intitulée « Synker – Forcer la synchronisation ». Appuyez sur l'icône en forme de crayon pour afficher l'écran de configuration de Synker. Faites défiler vers le bas et sélectionnez « Chrome Sync » pour votre compte Google.
  3. Accorder l'accès au superutilisateur Tasker. Le moyen le plus rapide de procéder consiste à obliger le Tasker à tenter d'effectuer une action qui nécessite su. De nouveau dans l'écran de configuration des tâches « Vérifier les favoris Chrome », cette fois-ci, appuyez longuement sur l'action n° 3 intitulée « Exécuter. Shell." Appuyez sur l'icône "play" qui apparaît dans le coin inférieur gauche pour que Tasker exécute cette action, et celle-ci. seulement. Tasker vous demandera de lui accorder un accès superutilisateur. Remarque pour ceux d'entre vous qui utilisent MagiskSU: Tasker ne détecte actuellement pas MagiskSU par lui-même, il peut donc générer une erreur indiquant que votre appareil n'est pas rooté. Ce sera corrigé dans la prochaine mise à jour de Tasker, mais si vous recherchez une solution de contournement temporaire, membre senior XDA AléatoirePooka a un petit guide pour ça.

Après avoir effectué ces 3 choses, ce profil devrait maintenant commencer à fonctionner. Lors de votre premier lancement de TugaBrowser/de votre navigateur de choix après sa configuration, Tasker enregistrera la valeur de la somme de contrôle du fichier de favoris de Chrome. Lorsque cette valeur de somme de contrôle change lors d'un lancement ultérieur de TugaBrowser/du navigateur de votre choix, Tasker remplacera le fichier de favoris de votre navigateur par celui de Chrome.

Notez que pour le premier lancement de votre navigateur, je ne l'ai pas configuré intentionnellement afin que Tasker copie la valeur du signet de Chrome jusqu'à ce qu'il détecte un changement. Cela signifie que les favoris de votre TugaBrowser/navigateur de votre choix ne changeront pas tant que vous n'aurez pas modifié les favoris de Chrome. J'ai fait cela pour que vous puissiez accéder à TugaBrowser/au navigateur de votre choix pour enregistrer vos favoris non synchronisés/hors ligne. stockés sur les serveurs de Google afin que mon profil Tasker ne les efface pas sans que vous ayez la possibilité de les enregistrer autre part.


Comment synchroniser les signets sur des navigateurs autres que TugaBrowser

Si vous n'utilisez pas TugaBrowser, vous devrez modifier quelques étapes afin que cela fonctionne sur le navigateur Chrome de votre choix. Heureusement, c’est très, très simple à faire. Je vais vous montrer comment procéder en utilisant Chromium open source comme exemple. Voici la liste des éléments que vous devrez modifier :

  1. Modifier le contexte de l'application. Plutôt que "TugaBrowser" soit défini comme contexte d'application, modifiez le contexte d'application pour qu'il se déclenche lors de l'utilisation du navigateur de votre choix. Appuyez simplement sur le contexte et recherchez votre application dans la liste.
  2. Modifier Action n°12 (Exécutez la commande Shell) pour pointer vers le fichier de signets de votre navigateur particulier. Le répertoire devrait ressembler à /data/data/PACKAGE.NAME/app_chrome/Default/Bookmarks. (Remarque: les variables et les noms de fichiers qui l'enregistrent/y font référence sous le nom de "TugaBookmarks" peuvent être ignorés en toute sécurité, il vous suffit de changer l'endroit d'où Tasker extrait le fichier Bookmark) Avant :
    cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
    Après:
    cp /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
  3. Modifier Action n°18 (une autre commande Run Shell) pour enregistrer le fichier de signets mis à jour dans le répertoire de données de votre navigateur. Encore une fois, le répertoire devrait ressembler à celui ci-dessus. Avant:
    cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks
    Après:
    cp /sdcard/Tasker/Bookmarks /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks 
  4. Modifier Action n°23 pour tuer le navigateur de votre choix. C'est le cas lorsque vous appuyez sur le bouton de redémarrage dans la barre de collations, Tasker tuera la bonne application.
  5. Modifier Action n°25 pour relancer le même navigateur de votre choix. Cela relancera le navigateur après sa suppression par l'utilisateur afin qu'il puisse charger le ou les nouveaux signets.

Tout le reste peut être laissé tranquille en toute sécurité, même si les noms de variables/fichiers créés n'ont pas de sens avec votre navigateur particulier. Vous pouvez choisir de les modifier s'ils vous dérangent, mais assurez-vous de savoir ce que vous faites avant d'essayer de le faire. Avoir une certaine familiarité avec Tasker y sera certainement utile.


Conclusion

J'espère que vous trouverez ce profil utile. Je sais qu'il y a beaucoup de choses à retenir ici, mais il est très important que vous lisiez attentivement cet article afin de comprendre ce que cela fait, comment cela fonctionne et quand cela fonctionnera. Cela m'a demandé beaucoup d'essais et d'erreurs pour y parvenir, mais je suis plutôt content du résultat, même si cela semble trop compliqué au final.

L'automatisation de ce processus permet d'alléger une partie du fardeau lié à la synchronisation de vos favoris avec Chrome Sync, même si malheureusement, ce ne sera qu'un problème. synchronisation unidirectionnelle et nécessitera toujours un accès root jusqu'à ce que Google assouplit ses restrictions empêchant les navigateurs Chrome tiers d'accéder à Chrome Synchronisation.

Si vous avez des questions, des commentaires ou des préoccupations, faites-le nous savoir dans les commentaires ci-dessous !