Kako sinkronizirati Chromeove oznake radne površine s Chrome preglednicima trećih strana na Androidu

Udžbenik o tome kako sinkronizirati svoje Chrome oznake s Chrome preglednicima trećih strana kao što je TugaBrowser. Zahtijeva root i jednosmjerna je metoda sinkronizacije.

Tijekom prošle godine, preglednici trećih strana temeljeni na Googleovom Chromeu eksplodirali su u popularnosti. Ovaj trend je započeo nakon što je Code Aurora Forum (CAF) počeo objavljivati Chromium verzije optimizirane za Snapdragon uređaje u listopadu 2015. Programeri zainteresirani za izradu ultimativnog preglednika punog značajki počeli su rastavljati projekt i dodavali značajke poput noćnog način rada, programi za blokiranje sadržaja, načini rada za uštedu energije, podrška za pokrete i više od podrške za Chrome oznake putem Chrome sinkronizacije API.

Korisnici su hrlili u projekte poput popularnog TugaBrowser na našim forumima jer su ti preglednici ponudili mnoga poboljšanja povrh Googleovih postojećih značajki sinkronizacije Chromea koje nisu dostupne u preglednicima koji nisu Chrome. Nažalost, Google isključite pristup trećih strana Chrome Sync API-ju

još u siječnju, navodeći sigurnosne razloge. Google je izjavio da ovaj potez nije namjerno napravljen kako bi se ometali Chrome preglednici trećih strana, za koje čak i open-source Chromium je klasificiran kao, ali ova je sigurnosna zakrpa slučajno označila kraj sinkronizacije oznaka za preglednike Chrome trećih strana.

U ovom trenutku još uvijek ne postoji način da preglednici kao što je TugaBrowser sinkroniziraju promjene oznaka s Chrome Sync. Ali tamo je način sinkronizacije knjižnih oznaka vaše radne površine s Chrome preglednicima trećih strana, pod uvjetom da imate root pristup. Metoda, koja objavili smo o tome prije, u osnovi se može sažeti u ove korake:

  1. Otvorite datoteku oznaka za preglednik Chrome treće strane i kopirajte vrijednost kontrolnog zbroja
  2. Gurnite datoteku oznaka iz Chromeovog direktorija u direktorij Chrome preglednika treće strane, prebrišući je.
  3. Otvorite novu datoteku oznaka i prebrišite vrijednost kontrolnog zbroja onom koju ste prvo kopirali
  4. Prisilno zatvorite/ukinite preglednik Chrome treće strane kako bi ponovno učitao svoje oznake

Ova metoda uređivanja vaših knjižnih oznaka postoji godinama kao način vraćanja vaših knjižnih oznaka na radnu površinu u slučaju nešto je pošlo po zlu, ali korištenje ovih koraka za postavljanje vaših oznaka na preglednike kao što je TugaBrowser je zgodna primjena ovoga stari trik. Iako vam ova metoda doista omogućuje preuzimanje vaših Chromeovih oznaka na vašem omiljenom Chrome pregledniku treće strane, zahtijeva da napravite ove korake svaki put kada dodate novu oznaku u Chrome. To sigurno nije nimalo zgodno, zbog čega sam pokušao automatizirati ovaj proces.

U videu iznad, primijetite kako kada otvorim TugaBrowser da pokažem svoje oznake, prikazuju se 3 oznake. Kad izađem i ponovno otvorim TugaBrowser, a zalogajnica prikazuje se govoreći mi da je otkrivena nova knjižna oznaka zajedno s gumbom za ponovno pokretanje TugaBrowsera. Kad pritisnem gumb za ponovno pokretanje preglednika, otvorim stranicu s oznakama i sada vidim da je dodana nova, četvrta oznaka. U biti, automatizirao sam gornja 4 koraka da rade tiho u pozadini, a ovdje objavljujem vodič koji vam pokazuje kako i vi to možete učiniti!

Prije nego počnem s ovim vodičem, moram spomenuti nekoliko stvari:

  • Ova metoda zahtijeva root pristup. Apsolutno nema načina zaobići ovaj zahtjev, žao nam je! Petljamo se s datotekama u /data/data kojima se ne može pristupiti bez roota.
  • Ova metoda je a jednosmjerna sinkronizacija, što znači da sve oznake koje dodate u preglednik Chrome treće strane nisu spremljene (i zapravo su prebrisane). Sve nove oznake morat ćete dodati unutar Chrome preglednika koji ima omogućenu Chrome sinkronizaciju. Istražio sam metode kako prisiliti Chrome Sync da prihvati moje promjene oznaka, ali nažalost ne mislim da je moguće jer se čini da verzija vaših oznaka pohranjenih na Googleovom poslužitelju uvijek poništava sve promjene koje ste promijenili ručno napraviti.
  • Ova metoda je sef. Vaše knjižne oznake nisu u opasnosti od brisanja, jer mi nismo (i ne možemo) petljati s Googleovom kopijom vaših knjižnih oznaka koje su pohranjene na njihovom poslužitelju.

Ako tražite dvosmjernu metodu sinkronizacije u Chrome pregledniku treće strane, oprostite, nikada nećete dobiti takvu metodu. Za to krivite Google. Ako se pitate "koja je svrha ovoga", onda ovaj tutorial nije za vas. Ako želite donekle olakšati muku oko Googleovog uklanjanja Chrome Synca, nadamo se da će vam ovaj vodič biti koristan.


Jednosmjerna sinkronizacija Chrome oznaka za preglednike Chrome trećih strana

Zahtjevi:

  • Root pristup
  • Tasker ($2.99)
  • Sinker
  • Snackbar Tasker dodatak
  • Google Chrome preglednik

Iako kažem da je Tasker potreban, možda ćete se moći izvući s korištenjem drugih aplikacija za automatizaciju u Trgovini Play. Ako se odlučite za to, prepušteni ste sami jer ja nemam iskustva s njihovim korištenjem pa ćete morati sami prilagoditi moju skriptu. Synker je neophodan jer ga koristimo za prisilno ručno osvježavanje vaših oznaka. Tasker dodatak za snackbar tehnički nije neophodan, ali on daje snackbar lijepog izgleda koji mi daje do znanja da postoje nove oznake s gumbom za ponovno pokretanje aplikacije. Konačno, morate imati Google Chrome (bilo koji kanal je u redu) instaliran (a ne onemogućen) na vašem uređaju jer će nam dati datoteku oznaka koju ćemo kopirati.

Još jednu stvar koju treba spomenuti: iako je moj vodič izgrađen sa TugaBrowser Imajte na umu da ovo možete lako natjerati da radi s bilo kojim drugim preglednikom temeljenim na Chromeu izmjenom nekoliko koraka koje ću navesti na kraju u nastavku.

Tutorial

Skripta koju koristim prilično je složena, s ukupno 29 radnji, tako da neću ulaziti u pretjerane detalje o tome kako svaka korak radi, ali samo znajte da ova skripta u biti automatizira 4 ručna koraka navedena na početku članak.

Evo opisa profila za one od vas koji ste već stručnjaci za Tasker i želite ga sami pokušati replicirati.

CAF Bookmark Sync

 Profile: CAF Bookmark Sync (28) 

Aplikacija: TugaBrowser

Unesite: Provjerite Chromeove oznake (27)

A1: Synker - Prisilna sinkronizacija [ Konfiguracija: Prisilna sinkronizacija 2 pružatelja (a) Istek (sekunde): 0 ]

A2: Pričekajte [ MS: 0 sekundi: 5 minuta: 0 sati: 0 dana: 0 ]

A3: Pokreni ljusku [ Naredba: cp /data/data/com.android.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/Bookmarks Istek (sekunde):0 Koristi Root: On Pohrani izlaz u: Pohrani pogreške u: Pohrani rezultat U: ]

A4: Pročitajte datoteku [ File:/sdcard/Tasker/Bookmarks To Var:%json ]

A5: Podjela varijable [Naziv:%json Splitter:"checksum": Izbriši bazu: Isključeno ]

A6: Variable Search Replace [ Variable:%json2 Search:(?<=")[^"]+(?=") Ignoriraj velika i mala slova: Off Multi-Line: Off One Match Only: On Store Matches In:%checksum Zamijeni matches: Isključeno Zamijeni sa: ]

A7: Ako [ %ChromeChecksum !Set ]

A8: Varijabla postavljena [ Name:%ChromeChecksum To:%checksum (1) Rekurzivne varijable: Off Do Maths: Off Dodavanje: Off ]

A9: Drugo

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

A11: Varijabla postavljena [Naziv:%ChromeChecksum To:%checksum (1) Recure Variables: Off Do Maths: Off Append: Off ]

A12: Pokrenite ljusku [ Naredba: cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks Istek vremena (sekunde):0 Koristi korijen: On Pohrani izlaz u: Pohrani pogreške u: Pohrani Rezultat u: ]

A13: Pročitajte datoteku [ File:/sdcard/Tasker/TugaBookmarks To Var:%tugajson ]

A14: Varijabla Split [ Name:%tugajson Splitter:"checksum": Delete Base: Off ]

A15: Variable Search Replace [ Variable:%tugajson2 Search:(?<=")[^"]+(?=") Ignore Case: Off Multi-Line: Off One Match Only: On Store Matches In:%checksum Zamijeni matches: Isključeno Zamijeni sa: ]

A16: Variable Search Replace [ Variable:%json2 Search:(?<=")[^"]+(?=") Ignoriraj velika i mala slova: Off Multi-Line: Off One Match Only: On Store Matches In: Replace Matches: On Zamijeni s:%kontrolna suma (1) ]

A17: Napiši datoteku [ File:/sdcard/Tasker/Bookmarks Text:%json1"checksum":%json2 Append: Off Add Newline: Off ]

A18: Pokreni Shell [ Naredba: cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks Istek vremena (sekunde):0 Koristi root: Uključeno Pohrani izlaz u: Pohrani pogreške u: Pohrani rezultat u: ]

A19: Snackbar [ Konfiguracija: Poruka: Otkrivene nove knjižne oznake.

Gumb: RESTART

Naredba: Istek (sekunde):15 ]

A20: Ako je [ %sb_button ~ gumb pritisnut ]

A21: Idi kući [ Stranica: 0 ]

A22: Pričekajte [ MS: 0 sekundi: 2 minute: 0 sati: 0 dana: 0 ]

A23: Zatvori aplikaciju [Aplikacija: TugaBrowser Koristi root: Isključeno]

A24: Pričekajte [ MS: 0 sekundi: 2 minute: 0 sati: 0 dana: 0 ]

A25: Pokreni aplikaciju [ Aplikacija: TugaBrowser Podaci: Isključi iz nedavnih aplikacija: Isključeno Uvijek pokreni novu kopiju: Isključeno ]

A26: End If

A27: Izbriši datoteku [Datoteka:/sdcard/Tasker/TugaBookmarks Razina uništavanja: 0 Koristi korijen: Isključeno]

A28: End If

A29: End If

A30: Izbriši datoteku [Datoteka:/sdcard/Tasker/Bookmarks Shred Level: 0 Use Root: Off]

Čitaj više

Skripta se aktivira kad god Tasker otkrije da ste ušli u preglednik Chrome treće strane po izboru, u mom slučaju TugaBrowser. Morat ćete omogućiti Taskerovu uslugu pristupačnosti kako bi Tasker mogao otkriti kada ste u pregledniku po vašem izboru. Ovaj dio se lako može modificirati da radi s drugim preglednicima baziranim na Chromeu, sve što trebate učiniti je odabrati na kojem pregledniku želite da se ova skripta pokreće u kontekstu aplikacije u Taskeru.

Evo kratkog opisa onoga što svaki skup radnji u ovom zadatku postiže.

  • A1-A2: ručno sinkronizirajte oznake Chromea s Googleovog poslužitelja tako da se datoteka oznaka instalirane aplikacije Chrome ažurira. Pričekajte 5 sekundi kako biste bili sigurni da ima dovoljno vremena za dovršetak sinkronizacije
  • A3-A6: kopirajte Chromeovu datoteku knjižne oznake na privremenu lokaciju, izdvojite JSON iz datoteke u varijablu, a zatim upotrijebite filtar regularnih izraza za izdvajanje vrijednosti kontrolne sume u drugu varijablu
  • A7-A10: ako Tasker nema postavljenu globalnu varijablu %ChromeChecksum (tj. kada prvi put pokrećete skriptu), postavite je na trenutnu vrijednost. Ako ima postavljenu vrijednost, zatim provjerite odgovara li vrijednost pohranjena u varijabli Tasker trenutnom kontrolnom zbroju u datoteci knjižne oznake. Ako je tako, prijeđite na A11-A26
  • A11: postavite varijablu Tasker koja drži kontrolni zbroj Chromea na trenutni kontrolni zbroj ekstrahiran iz datoteke knjižnih oznaka
  • A12-A15: kopirajte TugaBrowserovu datoteku knjižne oznake na privremenu lokaciju, izdvojite JSON iz datoteke, a zatim upotrijebite filter regularnih izraza da izdvojite vrijednost kontrolne sume
  • A16: upotrijebite vrijednost kontrolnog zbroja preuzetu iz TugaBrowsera i upotrijebite ga za zamjenu vrijednosti kontrolnog zbroja iz Chromeove datoteke oznaka
  • A17-A18: gurni ažuriranu datoteku oznake preuzetu iz Chromea, ali s vrijednošću kontrolne sume TugaBrowsera u direktorij podataka TugaBrowsera
  • A19-A26: prikaži snackbar koji nam govori da su dodane nove oznake. Ako se pritisne gumb na snackbaru, ponovno pokrenite TugaBrowser, inače nastavite dalje.
  • A27-A30: izbrišite privremene datoteke knjižnih oznaka s kojima smo radili i završite zadatak

Zašto ovo uključuje toliko koraka? Nažalost, to je zato što nemamo jednostavan način izravnog pristupa (potencijalno velikoj) JSON strukturi podataka u označavanje datoteka putem Taskera ili jednog od njegovih dodataka kao što je AutoTools bez kopiranja datoteke i izdvajanja njezina sadržaja u varijabla. Da možemo, ovaj rad bi bio puno sažetiji, ali za sada je ovo što sam smislio. Razgovarao sam s programerom AutoTools-a o ovom pitanju, i iako je on uspio ažurirati AutoTools na biti u mogućnosti čitati JSON podatke iz datoteke, pisanje JSON-a izravno u datoteku nije se moglo učiniti kroz Tasker uključiti.

U svakom slučaju, sama ova skripta radi iznimno brzo unatoč tome što se neki koraci čine nepotrebnim, jer ja želio ovo objaviti bez potrebe za instaliranjem nepotrebnih dodatnih dodataka Tasker. Jedina stvar koja usporava ovu skriptu i zašto vidite kašnjenje u videu je vrijeme čekanja potrebno za Tasker kako bi se osiguralo da su vaše Chrome oznake sinkronizirane s Googleovim poslužiteljima prije nego što krenete s ostatkom skripta. Svakako se možete poigrati s naredbama 'čekaj' u zadatku Tasker kako biste smanjili kašnjenje ako želite, ali to u konačnici ovisi o vama.


Preuzimanje, uvoz i postavljanje

Kao i uvijek, osigurat ćemo XML datoteku Taskerovog profila koju možete zgrabiti da brzo postavite ovo za sebe. Preuzmite .prf.xml datoteku u nastavku s AndroidFileHost i spremite je u internu pohranu. Otvorite Tasker i onemogućite početnički način rada u postavkama. Vratite se na glavni zaslon Taskera i dugo pritisnite karticu "Profil" na traci s radnjama na vrhu dok ne vidite iskačuću opciju "uvoz". Pritisnite to, a zatim idite do mjesta na koje ste spremili XML datoteku i odaberite je da biste je uvezli.

Preuzmite profil "Chrome Bookmark Sync" s AndroidFileHost

Postoje 3 vrlo, vrlo važna koraka (i 1 izborni, ali neophodan korak ako ne koristite TugaBrowser) koje trebate poduzeti prije nego što ovaj profil počne raditi za vas.

  1. Omogućiti TaskerovUsluga pristupačnosti. To možete učiniti tako da otvorite Postavke i potražite "pristupačnost". Dodirnite Tasker, a zatim omogućite njegovu uslugu pristupačnosti. Ovo je neophodno jer inače Tasker ne može otkriti kada koristite TugaBrowser (ili bilo koji drugi preglednik).
  2. Izaberi svoj Chrome Sync pružatelji usluga u Synkeru. To možete učiniti tako da otvorite zadatak "Provjeri Chromeove oznake", a zatim dodirnete Akciju #1 s oznakom "Sinker - Prisilna sinkronizacija." Pritisnite ikonu olovke za prikaz konfiguracijskog zaslona Synkera. Pomaknite se prema dolje i odaberite "Chrome Sync" za svoj Google račun.
  3. Dodijelite Taskeru superkorisnički pristup. Najbrži način da to učinite je da natjerate Taskera da pokuša izvršiti radnju koja zahtijeva su. Ponovno unutar zaslona za konfiguraciju zadatka "Provjeri Chromeove oznake", ovaj put dugo pritisnite radnju #3 s oznakom "Pokreni" Shell." Pritisnite ikonu "play" koja se pojavljuje u donjem lijevom kutu kako bi Tasker pokrenuo ovu radnju i ovu samo. Tasker će od vas tražiti da mu dodijelite pristup superkorisnika. Napomena za vas koji koristite MagiskSU: Tasker trenutačno ne otkriva sam MagiskSU, tako da može izbaciti pogrešku govoreći da vaš uređaj nije rootan. Ovo će biti popravljeno u sljedećem ažuriranju Taskera, ali ako tražite privremeno rješenje, stariji član XDA RandomPooka ima kratki vodič za to.

Nakon što učinite te 3 stvari, ovaj bi profil sada trebao početi raditi. Prilikom vašeg prvog pokretanja TugaBrowser/preglednika po izboru nakon postavljanja, Tasker će spremiti vrijednost kontrolnog zbroja Chromeove datoteke knjižnih oznaka. Kada se ta vrijednost kontrolnog zbroja promijeni u sljedećem pokretanju TugaBrowsera/vašeg preglednika po izboru, tada će Tasker zamijeniti datoteku oznake vašeg preglednika onom iz Chromea.

Imajte na umu da za prvo pokretanje vašeg preglednika, namjerno ga nisam postavio pa će Tasker kopirati Chromeovu vrijednost knjižne oznake dok ne otkrije promjenu. To znači da se knjižne oznake vašeg TugaBrowsera/preglednika po izboru neće promijeniti dok ne napravite promjenu u Chromeovim oznakama. Učinio sam ovo kako biste mogli pristupiti TugaBrowseru/vašem pregledniku po izboru da biste spremili svoje nesinkronizirane/izvanmrežne oznake pohranjeni na Googleovim poslužiteljima tako da ih moj Tasker profil ne izbriše bez da ih vi imate priliku spremiti drugdje.


Kako sinkronizirati oznake na preglednicima koji nisu TugaBrowser

U slučaju da ne koristite TugaBrowser, morat ćete izmijeniti nekoliko koraka kako bi ovo funkcioniralo na vašem odabranom pregledniku baziranom na Chromeu. Srećom, to je vrlo, vrlo lako učiniti. Pokazat ću vam kako to učiniti koristeći Chromium otvorenog koda kao primjer. Evo popisa stvari koje ćete morati promijeniti:

  1. Promijenite kontekst aplikacije. Umjesto da "TugaBrowser" bude postavljen kao kontekst aplikacije, promijenite kontekst aplikacije da se aktivira kada koristite preglednik po izboru. Samo dodirnite Kontekst i potražite svoju aplikaciju na popisu.
  2. Izmijeniti Radnja #12 (Pokreni naredbu Shell) za usmjeravanje na datoteku oznaka vašeg preglednika. Direktorij bi trebao izgledati kao /data/data/PACKAGE.NAME/app_chrome/Default/Bookmarks. (Napomena: varijable i imena datoteka koje ga spremaju/nazivaju kao "TugaBookmarks" mogu se sigurno zanemariti, samo trebate promijeniti odakle Tasker povlači datoteku Bookmark) Prije:
    cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
    Nakon:
    cp /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
  3. Izmijeniti Radnja #18 (još jedna naredba Run Shell) za spremanje ažurirane datoteke knjižne oznake u direktorij podataka vašeg preglednika. Opet, imenik bi trebao izgledati isto kao gore. Prije:
    cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks
    Nakon:
    cp /sdcard/Tasker/Bookmarks /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks 
  4. Izmijeniti Radnja #23 da ubije vaš preglednik po izboru. To je tako da kada pritisnete gumb za ponovno pokretanje na snackbaru, Tasker će ubiti pravu aplikaciju.
  5. Izmijeniti Radnja #25 za ponovno pokretanje istog preglednika po vašem izboru. Ovo će ponovno pokrenuti preglednik nakon što ga je korisnik zatvorio kako bi mogao učitati novu oznaku(e).

Sve ostalo možete sigurno ostaviti na miru, čak i ako stvorena imena varijabli/datoteka nemaju smisla u vašem pregledniku. Možete ih promijeniti ako vam smetaju, ali provjerite znate li što radite prije nego što to pokušate učiniti. Poznavanje Taskera sigurno će pomoći.


Zaključak

Nadam se da će vam ovaj profil biti koristan. Znam da ovdje ima mnogo toga za uzeti u obzir, ali je jako važno da pažljivo pročitate ovaj post kako biste razumjeli što ovo radi, kako radi i kada će raditi. Trebalo mi je puno pokušaja i pogrešaka da ovo ispravim, ali sam prilično zadovoljan rezultatima, čak i ako se na kraju čini previše kompliciranim.

Automatizacija ovog procesa pomaže ublažiti dio tereta sinkronizacije vaših oznaka s Chrome sinkronizacijom, iako će to, nažalost, uvijek biti samo jednosmjerna sinkronizacija i uvijek će zahtijevati root pristup dok Google ne ublaži svoja ograničenja koja sprječavaju preglednike Chrome trećih strana da pristupe Chromeu Sinkronizacija

Ako imate pitanja, komentara ili nedoumica, javite nam u komentarima ispod!