Vadnica o tem, kako sinhronizirati svoje zaznamke Chrome z brskalniki Chrome tretjih oseb, kot je TugaBrowser. Zahteva root in je enosmerna metoda sinhronizacije.
V zadnjem letu so brskalniki tretjih oseb, ki temeljijo na Googlovem Chromu, eksplodirali v priljubljenosti. Ta trend se je začel po začetku objavljanja foruma Code Aurora (CAF). Zgradbe Chromiuma, optimizirane za naprave Snapdragon oktobra 2015. Razvijalci, ki jih zanima izdelava vrhunskega brskalnika, polnega funkcij, so začeli razcepljati projekt in dodali funkcije, kot je nočni način, blokatorji vsebine, načini varčevanja z energijo, podpora za kretnje in še več poleg podpore za zaznamke v Chromu prek Chrome Sync API.
Uporabniki so se zgrinjali k projektom, kot je priljubljeni TugaBrowser na naših forumih, ker so ti brskalniki ponujali številne izboljšave poleg obstoječih Googlovih funkcij sinhronizacije za Chrome, ki niso na voljo v brskalnikih, ki niso Chrome. Na žalost Google onemogočite dostop tretjih oseb do API-ja Chrome Sync
januarja, navajajoč varnostne pomisleke. Google je izjavil, da ta poteza ni bila narejena namerno, da bi ovirala brskalnike Chrome tretjih oseb, za katere celo odprtokodni Chromium je razvrščen kot, vendar je ta varnostni popravek mimogrede pomenil konec sinhronizacije zaznamkov za brskalnike Chrome drugih proizvajalcev.Trenutno brskalniki, kot je TugaBrowser, še vedno ne morejo sinhronizirati sprememb zaznamkov s Chrome Sync. Ampak tam je način za sinhronizacijo zaznamkov namizja z brskalniki Chrome tretjih oseb, če imate korenski dostop. Metoda, ki smo že objavili, lahko v bistvu povzamemo v te korake:
- Odprite datoteko z zaznamki za brskalnik Chrome drugega proizvajalca in kopirajte vrednost kontrolne vsote
- Potisnite datoteko z zaznamki iz Chromovega imenika v imenik brskalnika Chrome tretje osebe in jo prepišite.
- Odprite novo datoteko z zaznamki in prepišite vrednost kontrolne vsote s tisto, ki ste jo najprej kopirali
- Prisilno zaprite/ustavite brskalnik Chrome drugega proizvajalca, da bo znova naložil svoje zaznamke
Ta način urejanja zaznamkov obstaja že leta kot sredstvo za obnovitev zaznamkov na namizju v primeru, nekaj je šlo narobe, vendar je uporaba teh korakov za pridobivanje zaznamkov v brskalnikih, kot je TugaBrowser, odlična aplikacija tega stari trik. Čeprav vam ta metoda res omogoča, da svoje zaznamke Chrome prenesete v vaš najljubši brskalnik Chrome drugega proizvajalca, morate naredite te korake vsakič, ko dodate nov zaznamek v Chrome. To vsekakor ni priročno, zato sem poskušal avtomatizirati ta proces.
V zgornjem videoposnetku opazite, kako ko odprem TugaBrowser, da pokažem svoje zaznamke, so prikazani 3 zaznamki. Ko zapustim in znova odprem TugaBrowser, a Okrepčevalnica se prikaže, da je bil zaznan nov zaznamek, skupaj z gumbom za ponovni zagon TugaBrowserja. Ko pritisnem gumb za ponovni zagon brskalnika, odprem stran z zaznamki in zdaj vidim, da je bil dodan nov, četrti zaznamek. V bistvu sem zgornje 4 korake avtomatiziral, da delujejo tiho v ozadju, in tukaj objavljam vadnico, ki vam pokaže, kako lahko to storite tudi vi!
Preden začnem s to vadnico, moram omeniti nekaj stvari:
- Ta metoda zahteva korenski dostop. Tej zahtevi nikakor ne moremo zaobiti, žal! Zapletamo se z datotekami v /data/data, do katerih ni mogoče dostopati brez root-ja.
- Ta metoda je a enosmerna sinhronizacija, kar pomeni, da se vsi zaznamki, ki jih dodate v brskalnik Chrome drugega proizvajalca, ne shranijo (in so dejansko prepisani). Vse nove zaznamke boste morali dodati v brskalniku Chrome, ki ima omogočeno Chrome Sync. Preučil sem metode, s katerimi bi prisilil Chrome Sync, da sprejme moje spremembe zaznamkov, vendar žal mislim, da ni mogoče, ker se zdi, da različica vaših zaznamkov, shranjenih v Googlovem strežniku, vedno preglasi morebitne spremembe, ki jih spremenite ročno narediti.
- Ta metoda je varno. Brisanje vaših zaznamkov ni v nobeni škodi, ker nismo (in ne moremo) posegati v Googlovo kopijo vaših zaznamkov, ki so shranjeni na njihovem strežniku.
Če iščete dvosmerno metodo sinhronizacije v brskalniku Chrome drugega proizvajalca, se opravičujemo, nikoli ne boste dobili takšne metode. Za to krivite Google. Če se sprašujete "kaj je smisel tega", potem ta vadnica ni za vas. Če želite nekoliko olajšati bolečino Googla pri odstranjevanju Chrome Sync, upajmo, da vam bo ta vadnica koristna.
Enosmerna sinhronizacija zaznamkov v Chromu za brskalnike Chrome drugih proizvajalcev
Zahteve:
- Korenski dostop
- Tasker ($2.99)
- Sinker
- Vtičnik Snackbar Tasker
- Brskalnik Google Chrome
Čeprav pravim, da je Tasker potreben, se boste morda lahko izognili uporabi drugih aplikacij za avtomatizacijo v Trgovini Play. Če se odločite za to, ste sami, ker nimam izkušenj z njihovo uporabo, zato boste morali moj scenarij prilagoditi sami. Synker je potreben, ker ga uporabljamo za prisilno ročno osvežitev vaših zaznamkov. Vtičnik Tasker za vrstico s prigrizki tehnično ni potreben, vendar je tisto, kar zagotavlja lepo vrstico s prigrizki, ki mi sporoči, da so novi zaznamki z gumbom za ponovni zagon aplikacije. Končno morate imeti Google Chrome (kateri koli kanal je v redu) nameščen (in ne onemogočen) v vaši napravi, ker nam bo zagotovil datoteko z zaznamki, ki jo bomo kopirali.
Še ena stvar, ki jo moram omeniti: čeprav je moja vadnica zgrajena s TugaBrowser Upoštevajte, da lahko preprosto dosežete, da bo to delovalo s katerim koli drugim brskalnikom, ki temelji na Chromu, tako da spremenite nekaj korakov, ki jih bom orisal na koncu spodaj.
Vadnica
Skript, ki ga uporabljam, je precej zapleten, s skupno 29 dejanji, zato se ne bom spuščal v pretirane podrobnosti o tem, korak deluje, vendar vedite, da ta skript v bistvu avtomatizira 4 ročne korake, opisane na začetku Članek.
Tukaj je opis profila za tiste, ki ste že strokovnjaki za Tasker in ga želite poskusiti ponoviti sami.
Sinhronizacija zaznamkov CAF
Profile: CAF Bookmark Sync (28)
Aplikacija: TugaBrowser
Enter: Preverite zaznamke v Chromu (27)
A1: Synker – vsiljena sinhronizacija [ Konfiguracija: vsiljena sinhronizacija 2 ponudnika (-ov) Časovna omejitev (sekund): 0 ]
A2: Počakajte [MS: 0 sekund: 5 minut: 0 ur: 0 dni: 0]
A3: Zaženi lupino [ Ukaz: cp /data/data/com.android.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/Bookmarks Časovna omejitev (sekunde):0 Uporabi koren: Vklopljeno Shrani izhod v: Shrani napake v: Shrani rezultat V: ]
A4: Branje datoteke [File:/sdcard/Tasker/Bookmarks To Var:%json]
A5: Variable Split [ Ime:%json Splitter:"checksum": Delete Base: Off ]
A6: Iskanje po spremenljivki Zamenjaj [ Spremenljivka:%json2 Iskanje:(?<=")[^"]+(?=") Prezri velike in male črke: Izklopljeno Več vrstic: Izklopljeno Samo eno ujemanje: Vklopljeno Shrani Ujemanje v:%kontrolna vsota Zamenjaj ujemanja: Izključeno Zamenjaj z: ]
A7: Če [ %ChromeChecksum !Set ]
A8: Spremenljivka Set [ Name:%ChromeChecksum To:%checksum (1) Recurse Spremenljivke: Off Do Maths: Off Append: Off ]
A9: Sicer
A10: Če [ %ChromeChecksum !~ %checksum (1) ]
A11: Spremenljivka Set [ Name:%ChromeChecksum To:%checksum (1) Recurse Spremenljivke: Off Do Maths: Off Append: Off ]
A12: Zaženi lupino [ Ukaz: cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks Časovna omejitev (sekunde):0 Uporabi koren: Vklopljeno Shrani izhod v: Shrani napake v: Shrani Rezultat: ]
A13: Branje datoteke [Datoteka:/sdcard/Tasker/TugaBookmarks v Var:%tugajson]
A14: Variable Split [ Name:%tugajson Splitter:"checksum": Delete Base: Off ]
A15: Iskanje po spremenljivki Zamenjaj [ Spremenljivka:%tugajson2 Iskanje:(?<=")[^"]+(?=") Prezri velike in male črke: Izklopljeno Več vrstic: Izklopljeno Samo eno ujemanje: Vklopljeno Shrani Ujemanje v:%kontrolna vsota Zamenjaj ujemanja: Izključeno Zamenjaj z: ]
A16: Iskanje po spremenljivki Zamenjaj [ Spremenljivka:%json2 Iskanje:(?<=")[^"]+(?=") Prezri velike in male črke: Izklopljeno Več vrstic: Izklopljeno Samo eno ujemanje: Vklopljeno Shrani ujemanja v: Zamenjaj ujemanja: Vklopljeno Zamenjaj z:%kontrolna vsota (1) ]
A17: Zapišite datoteko [ File:/sdcard/Tasker/Bookmarks Text:%json1"checksum":%json2 Append: Off Add Newline: Off ]
A18: Zaženi lupino [ Ukaz: cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks Časovna omejitev (sekunde):0 Uporabi root: Vklopljeno Shrani izhod v: Shrani napake v: Shrani rezultat v: ]
A19: Snackbar [ Konfiguracija: Sporočilo: Zaznani novi zaznamki.
Gumb: PONOVNI ZAGON
Ukaz: Časovna omejitev (sekund): 15 ]
A20: Če je [ %sb_button ~ gumb pritisnjen ]
A21: Pojdi domov [ Stran: 0 ]
A22: Počakajte [MS: 0 sekund: 2 minuti: 0 ur: 0 dni: 0]
A23: Kill App [Aplikacija: TugaBrowser Uporabi Root: Off]
A24: Počakajte [MS: 0 sekund: 2 minuti: 0 ur: 0 dni: 0]
A25: Zagon aplikacije [Aplikacija: Podatki TugaBrowser: Izključi iz nedavnih aplikacij: Izklopljeno Vedno zaženi novo kopijo: Izklopljeno]
A26: End If
A27: Izbriši datoteko [Datoteka:/sdcard/Tasker/TugaBookmarks Raven odstranjevanja: 0 Uporabi koren: Izklopljeno]
A28: End If
A29: End If
A30: Izbriši datoteko [ File:/sdcard/Tasker/Bookmarks Shred Level: 0 Use Root: Off ]
Preberi več
Skript se aktivira vsakič, ko Tasker zazna, da ste vnesli izbrani brskalnik Chrome tretje osebe, v mojem primeru TugaBrowser. Taskerjevo storitev dostopnosti boste morali omogočiti, da bo lahko Tasker zaznal, kdaj ste v izbranem brskalniku. Ta del je mogoče enostavno spremeniti za delo z drugimi brskalniki, ki temeljijo na Chromu, vse kar morate storiti je, da izberete brskalnik, v katerem želite, da se ta skript izvaja v kontekstu aplikacije v Taskerju.
Tukaj je kratek opis tega, kaj dosega vsak niz dejanj v tej nalogi.
- A1-A2: ročno sinhronizirajte zaznamke Chrome z Googlovim strežnikom, tako da se datoteka z zaznamki nameščene aplikacije Chrome posodobi. Počakajte 5 sekund, da zagotovite dovolj časa za dokončanje sinhronizacije
- A3-A6: kopirajte Chromovo datoteko z zaznamki na začasno lokacijo, ekstrahirajte JSON iz datoteke v spremenljivko, nato uporabite filter regularnih izrazov, da izvlečete vrednost kontrolne vsote v drugo spremenljivko
- A7-A10: če Tasker nima nastavljene globalne spremenljivke %ChromeChecksum (tj. ko prvič izvajate skript), ga nastavite na trenutno vrednost. Če ima nastavljeno vrednost, nato preverite, ali se vrednost, shranjena v spremenljivki Tasker, ujema s trenutno kontrolno vsoto v datoteki z zaznamki. Če je tako, pojdite na A11-A26
- A11: nastavite spremenljivko Tasker, ki vsebuje kontrolno vsoto Chroma, na trenutno kontrolno vsoto, pridobljeno iz datoteke z zaznamki
- A12-A15: kopirajte datoteko z zaznamki brskalnika TugaBrowser na začasno lokacijo, ekstrahirajte JSON iz datoteke, nato uporabite filter regularnih izrazov, da ekstrahirate vrednost kontrolne vsote
- A16: uporabite vrednost kontrolne vsote, vzeto iz brskalnika TugaBrowser, in jo uporabite za zamenjavo vrednosti kontrolne vsote iz Chromove datoteke z zaznamki
- A17-A18: potisnite posodobljeno datoteko z zaznamki, vzeto iz Chroma, vendar z vrednostjo kontrolne vsote brskalnika TugaBrowser, v podatkovni imenik brskalnika TugaBrowser
- A19-A26: pokaži vrstico s prigrizki, ki nam pove, da so bili dodani novi zaznamki. Če pritisnete gumb na vrstici s prigrizki, znova zaženite TugaBrowser, sicer nadaljujte.
- A27-A30: izbrišite začasne datoteke z zaznamki, s katerimi smo delali, in končajte nalogo
Zakaj to vključuje toliko korakov? Na žalost je to zato, ker nimamo preprostega načina za neposreden dostop do (potencialno velike) podatkovne strukture JSON v zaznamek datotek prek Taskerja ali enega od njegovih vtičnikov, kot je AutoTools, ne da bi kopirali datoteko in ekstrahirali njeno vsebino v spremenljivka. Če bi lahko, bi bilo to delo veliko bolj zgoščeno, toda za zdaj sem prišel do tega. O tej zadevi sem govoril z razvijalcem AutoTools in medtem ko je lahko posodobil AutoTools na biti sposoben prebrati podatke JSON iz datoteke, pisanja JSON neposredno v datoteko ni bilo mogoče izvesti prek Taskerja vključiti.
Vsekakor ta skript sam teče izjemno hitro, kljub temu, da se nekateri koraki zdijo nepotrebni, ker sem je želel to objaviti, ne da bi vam bilo treba namestiti nepotrebne dodatne vtičnike Tasker. Edina stvar, ki upočasni ta skript in zakaj vidite zakasnitev v videoposnetku, je čakalni čas, potreben za Tasker, da zagotovi, da so bili vaši zaznamki v Chromu sinhronizirani z Googlovimi strežniki, preden nadaljujete z ostalim scenarij. Vsekakor se lahko poigrate z ukazi 'počakaj' v nalogi Tasker, da zmanjšate zakasnitev, če želite, vendar je to na koncu odvisno od vas.
Prenos, uvoz in nastavitev
Kot vedno vam bomo zagotovili datoteko XML profila Tasker, ki jo lahko zgrabite in hitro nastavite sami. Prenesite spodnjo datoteko .prf.xml z AndroidFileHost in jo shranite v notranji pomnilnik. Odprite Tasker in onemogočite začetni način v nastavitvah. Vrnite se na glavni zaslon Taskerja in dolgo pritisnite na zavihek »Profil« v vrstici z dejanji na vrhu, dokler ne vidite pojavne možnosti »uvozi«. Pritisnite to in se nato pomaknite do mesta, kjer ste shranili datoteko XML, in jo izberite, da jo uvozite.
Prenesite profil »Chrome Bookmark Sync« iz AndroidFileHost
Obstajajo 3 zelo, zelo pomembni koraki (in 1 neobvezen, a potreben korak, če ne uporabljate TugaBrowserja), ki jih morate narediti, preden bo ta profil deloval za vas.
- Omogoči TaskerjevaStoritev dostopnosti. To lahko storite tako, da odprete nastavitve in poiščete »dostopnost«. Tapnite Tasker in nato omogočite njegovo storitev dostopnosti. To je potrebno, ker drugače Tasker ne more zaznati, kdaj uporabljate TugaBrowser (ali kateri koli drug brskalnik).
- Izberite svojo Ponudniki Chrome Sync v Synkerju. To lahko storite tako, da odprete nalogo »Preveri zaznamke v Chromu« in nato tapnete dejanje št. 1 z oznako »Sinker – prisilna sinhronizacija«. Pritisnite ikono svinčnika, da odprete konfiguracijski zaslon Synkerja. Pomaknite se navzdol in izberite »Chrome Sync« za svoj Google Račun.
- Taskerju dodelite dostop superuporabnika. Najhitrejši način za to je, da Tasker poskusi izvesti dejanje, ki zahteva su. Znova znotraj zaslona konfiguracije opravila »Preveri zaznamke Chrome«, tokrat dolgo pritisnite na dejanje št. 3 z oznako »Zaženi Shell." Pritisnite ikono "play", ki se pojavi v spodnjem levem kotu, da Tasker izvede to dejanje in to samo. Tasker vas bo prosil, da mu odobrite dostop superuporabnika. Opomba za tiste, ki uporabljate MagiskSU: Tasker trenutno ne zazna MagiskSU sam, zato lahko povzroči napako, da vaša naprava ni zakoreninjena. To bo popravljeno v naslednji posodobitvi Taskerja, če pa iščete začasno rešitev, višji član XDA RandomPooka ima kratek vodnik za to.
Ko naredite te 3 stvari, bi moral ta profil začeti delovati. Ob prvem zagonu brskalnika TugaBrowser/vašega izbranega brskalnika po nastavitvi bo Tasker shranil vrednost kontrolne vsote Chromove datoteke z zaznamki. Ko se ta vrednost kontrolne vsote spremeni pri poznejšem zagonu TugaBrowserja/vašega izbranega brskalnika, bo Tasker zamenjal datoteko z zaznamki vašega brskalnika s tisto iz Chroma.
Upoštevajte, da pri prvem zagonu brskalnika, tega namenoma nisem nastavil, tako da bo Tasker kopiral vrednost Chromovega zaznamka, dokler ne zazna spremembe. To pomeni, da se zaznamki vašega brskalnika TugaBrowser/izbranega brskalnika ne bodo spremenili, dokler ne spremenite zaznamkov Chroma. To sem naredil, da boste lahko dostopali do brskalnika TugaBrowser/vašega brskalnika, da shranite svoje nesinhronizirane zaznamke/zaznamke brez povezave. shranjeni v Googlovih strežnikih, tako da jih moj profil Tasker ne izbriše, ne da bi jih vi imeli možnost shraniti drugje.
Kako sinhronizirati zaznamke v brskalnikih, ki niso TugaBrowser
Če ne uporabljate TugaBrowserja, boste morali spremeniti nekaj korakov, da bo to delovalo v vašem izbranem brskalniku, ki temelji na Chromu. Na srečo je to zelo, zelo enostavno narediti. Pokazal vam bom, kako to storite na primeru odprtokodnega Chromiuma. Tukaj je seznam stvari, ki jih boste morali spremeniti:
- Spremenite kontekst aplikacije. Namesto da bi bil »TugaBrowser« nastavljen kot kontekst aplikacije, spremenite kontekst aplikacije, da se sproži ob uporabi izbranega brskalnika. Samo tapnite Kontekst in na seznamu poiščite svojo aplikacijo.
- Spremeni Akcija #12 (Zaženi ukaz lupine), da pokažete na datoteko z zaznamki vašega brskalnika. Imenik bi moral izgledati kot /data/data/PACKAGE.NAME/app_chrome/Default/Bookmarks. (Opomba: spremenljivke in imena datotek, ki jo shranijo/sklicujejo na "TugaBookmarks", lahko varno prezrete, morate samo spremeniti, od koder Tasker vleče datoteko z zaznamki) Pred:
po:cp /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
cp /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks /sdcard/Tasker/TugaBookmarks
- Spremeni Akcija #18 (drugi ukaz Run Shell), da shranite posodobljeno datoteko z zaznamki v podatkovni imenik vašega brskalnika. Še enkrat, imenik bi moral izgledati enako kot zgoraj. Pred:
po:cp /sdcard/Tasker/Bookmarks /data/data/tugapower.codeaurora.browser/app_chrome/Default/Bookmarks
cp /sdcard/Tasker/Bookmarks /data/data/org.chromium.chrome/app_chrome/Default/Bookmarks
- Spremeni Akcija #23 da ubije vaš izbrani brskalnik. Ko pritisnete gumb za ponovni zagon v vrstici s prigrizki, bo Tasker uničil pravo aplikacijo.
- Spremeni Akcija #25 da znova zaženete isti brskalnik po vaši izbiri. To bo znova zagnalo brskalnik, potem ko ga je uporabnik zaprl, tako da lahko naloži nove zaznamke.
Vse drugo lahko varno pustite pri miru, tudi če ustvarjena imena spremenljivk/datotek nimajo smisla v vašem brskalniku. Lahko se odločite, da jih spremenite, če vas motijo, vendar se prepričajte, da veste, kaj počnete, preden to poskusite storiti. Nekaj poznavanja Taskerja bo zagotovo pomagalo.
Zaključek
Upam, da vam bo ta profil koristen. Vem, da je tukaj veliko stvari, vendar je zelo pomembno, da natančno preberete to objavo, da boste razumeli, kaj to počne, kako deluje in kdaj bo delovalo. Potreboval sem veliko poskusov in napak, da sem prišel prav, vendar sem z rezultati zelo zadovoljen, čeprav se na koncu zdi preveč zapleteno.
Avtomatizacija tega postopka pomaga zmanjšati breme sinhronizacije vaših zaznamkov s Chrome Sync, čeprav bo to žal le enosmerna sinhronizacija in bo vedno zahteval korenski dostop, dokler Google ne ublaži svojih omejitev, ki brskalnikom Chrome tretjih oseb preprečujejo dostop do Chroma Sinhronizacija
Če imate kakršna koli vprašanja, komentarje ali pomisleke, nam to sporočite v spodnjih komentarjih!