თავად Google Chrome გადაიტვირთება, რა უნდა გავაკეთო? Chrome გაფართოების ცხელი გადატვირთვა

ბრაუზერი გუგლ ქრომიისინი ყველგან გამოიყენება და ამიტომ ყველას კარგად სმენია მასთან დაკავშირებული პრობლემების შესახებ. კერძოდ, ხდება სრულიად გაყინვა ყველაზე შეუფერებელ მომენტში, რაც მოითხოვს დაუყოვნებლივ გადატვირთვას. შემდეგი, ჩვენ გეტყვით, თუ როგორ სწრაფად და უმტკივნეულოდ გაუმკლავდეთ ასეთ სირთულეებს.

კონტაქტში

Google Chrome, თავისი უპირატესობების გარდა, ცნობილია იმითაც, თუ რამდენად სწრაფად ახერხებს მთლიანის შევსებას ოპერატიული მეხსიერება. პროცესორი მყისიერად იტვირთება ტევადობით და კომპიუტერი იწყებს საშინლად შენელებას და შეტყობინებებს უგზავნის მომხმარებელს დახმარების თხოვნით. თქვენ შეგიძლიათ გაუმკლავდეთ პრობლემას აპლიკაციის უბრალოდ გადატვირთვით. ანუ ბრაუზერის დახურვით და ხელახლა გახსნით, როგორც ამას ჩვეულებრივ აკეთებენ მომხმარებლები. მაგრამ არსებობს კიდევ ერთი გზა პროგრამის სწრაფად გადატვირთვისა და აღდგენისთვის.

იგი განსხვავდება პირველისგან ოპერაციის სიჩქარით. ეს მეთოდი ყველასთვის ცნობილი არ არის, თუმცა ბევრად უფრო მარტივია, ვიდრე ხელით გადატვირთვა. ასე რომ, გაყინული ბრაუზერის განახლების მიზნით, შეგიძლიათ შეიყვანოთ ბრძანება მისამართების ზოლში chrome://restart. მეტი მოხერხებულობისთვის, შეგიძლიათ შეინახოთ იგი სანიშნეად და გამოიყენოთ კრიტიკულ შემთხვევებში. და თქვენ შეგიძლიათ გააკეთოთ ეს ასე:

1 . შექმენით ნებისმიერი შემთხვევითი გვერდის სანიშნე;

2. დააწკაპუნეთ მასზე დააწკაპუნეთ მარჯვენა ღილაკითმაუსი და დააჭირეთ ღილაკს შეცვლა»;


3. დააკოპირეთ ბრძანება სტრიქონში, რომელიც გამოჩნდება URL სუბტიტრთან ერთად chrome://restartდა მინდორში“ სახელი» შეიყვანეთ ნებისმიერი მოსახერხებელი სიტყვა ან სიმბოლოების ნაკრები.

უბრალოდ მნიშვნელოვანია არ დაგავიწყდეთ, რომ ბრაუზერის გადატვირთვისას ბრაუზერში შეყვანილი ყველა მონაცემი შეიძლება გაქრეს. გახსენით ჩანართები. ამიტომ, გადატვირთვამდე მიზანშეწონილია დარწმუნდეთ, რომ ოპერაციის შედეგად არ დაიკარგება რაიმე მნიშვნელოვანი გამოუგზავნილი კომენტარი ან შეტყობინება.

მეორე დღეს გამიჩნდა სურვილი დამეწერა მარტივი გაფართოება Google Chrome-ისთვის. შემექმნა პრობლემა, რომ გაფართოების კოდში ცვლილებების შემდეგ ბრაუზერი ავტომატურად არ იტვირთება მას. ეს ძალიან ართულებს განვითარებას, რადგან... რედაქტორში ყოველი Cmd-S-ის შემდეგ, თქვენ უნდა დააჭიროთ „გადატვირთვას“ გაფართოებების სიაში და შემდეგ ასევე განაახლოთ გვერდი შინაარსის სკრიპტების გადატვირთვისთვის.


გარკვეული გამოკვლევის შემდეგ, აღმოჩნდა, რომ Chrome უზრუნველყოფს ყველა საჭირო API-ს, რომ თავად განახორციელოს ასეთი ფუნქციონირება მისი გაფართოებისთვის.


მზა ჩაშენებული ხსნარი მდებარეობს github.com/xpl/crx-hotreload, და ამ სტატიაში გეტყვით როგორ ხორციელდება.


ჩვენ ვიყენებთ File and Directory Entries API-ს, რათა რეკურსიულად მივიღოთ ფაილების სია საქაღალდეში:


const filesInDirectory = dir => new Promise(resolve => dir.createReader().readEntries(entries => Promise.all(entries.filter(e => e.name !== ".").map(e => e.isDirectory ? filesInDirectory (e) : new Promise (resolve => e.file (resolve))) .შემდეგ (ფაილი => .concat (...ფაილი)).

ჩვენ ვქმნით „კომპოზიტურ“ დროის შტამპს მიღებული ფაილების ყველა დროის ანაბეჭდიდან და მათი სახელებიდან:


const timestampForFilesInDirectory = dir => filesInDirectory(dir).then(ფაილები => files.map(f => f.name + f.lastModifiedDate).join())

ამრიგად, ჩვენ შეგვიძლია აღმოვაჩინოთ არა მხოლოდ ფაილებში ცვლილებები, არამედ მათი წაშლა/დამატება/გადარქმევა.


მეთვალყურე ამოწმებს ცვლილებებს ყოველ 1000 წამში:


const watchChanges = (dir, lastTimestamp) => (timestampForFilesInDirectory (dir).then (timestamp => ( if (!lastTimestamp || (lastTimestamp === timestamp)) (setTimeout (() => watchChanges (dir, timestamp), 1000) // ხელახლა სცადეთ 1 წამის შემდეგ) სხვა (გადატვირთვა ()))))

const reload = () => ( chrome.tabs.query (( active: true, currentWindow: true ), tabs => ( if (tabs) ( chrome.tabs.reload (tabs.id) ) chrome.runtime.reload ( )))))

ჩანართის გადატვირთვა გამოიძახება runtime.reload-მდე, წინააღმდეგ შემთხვევაში ის არ იმუშავებს - runtime.reload-ის გამოძახება აჩერებს სკრიპტის შესრულებას. მაგრამ რადგან ჩანართის გადატვირთვა ასინქრონულად მუშაობს, საბოლოოდ ყველაფერი გადატვირთულია სწორი თანმიმდევრობით - თუმცა კოდში ალოგიკური ჩანს.


ისე, საბოლოო შეხება არის მცველის გაშვება, რომელიც მიმართულია საქაღალდეზე გაფართოების კოდით. მაგრამ ამას ვაკეთებთ მხოლოდ იმ შემთხვევაში, თუ გაფართოება იტვირთება დეველოპერის რეჟიმში, მეშვეობით "ჩატვირთეთ შეუფუთავი გაფართოება":


chrome.management.getSelf(self => (if (self.installType === "განვითარება") (chrome.runtime.getPackageDirectoryEntry(dir => watchChanges(dir))))

ამრიგად, ჩვენ ვიხსნით დეველოპერს იმისგან, რომ შეწუხდეს ამ მცველის ხელით ამოჭრა წარმოების კონსტრუქციიდან.

ბოლოს და ბოლოს

ძირითადად ეს ასეა. თუმცა, სრულიად გაუგებარია, როგორ უნდა გამოსცადო ასეთი რამ. ნაკლებად სავარაუდოა, რომ სელენი აქ დაგვეხმარება, ან რა? გამოხმაურება მისასალმებელია.

Google Chrome გადატვირთავს გვერდებს. როგორ მოვიშოროთ ეს?

პრობლემა, პრინციპში, წერია თემაში. Google ბრაუზერი Chrome-მა ავტომატურად დაიწყო გვერდების გადატვირთვა. მაგალითად, მე ვკითხულობ პოსტს LiveJournal-ზე, ის მაწყვეტს და გადატვირთავს გვერდს, დამაგდებს გვერდის ზედა ნაწილში. რა სახის ხრიკებია ეს? გრძელი ტექსტების კითხვა უხერხული გახდა. როგორ დავაღწიოთ თავი ამ გვერდის ავტომატურ გადატვირთვას?


ვადიმ | 24 ივნისი 2016, 14:49
სცადეთ გამორთოთ chrome://flags/#enable-offline-auto-reload

ფარქსად | 2016 წლის 14 აპრილი, 00:50 საათი
Google ბრაუზერის "ისტორიის" ჩანართზე სრული ქაოსი მაქვს: ის 29-30 წამში ერთხელ განახლდება (განზრახ გავზომე!). იქ რაღაცის მშვიდად „მოძიება და პოვნა“ შეუძლებელია. ისვრის ზემოთ.
არსებობს ჭორები, რომ ეს არის „ვირუსული სიურპრიზები“ აკვიატებული თავისუფალი, ამპარტავანი თვითჩატვირთვებით ინტერნეტიდან ხელმოწერით „mail.ru“ (რომელიც დიდი ხანია „დაიკავა“ ჩემი Firefox ბრაუზერი, შემოაქვს სხვადასხვა მხატვრული სისულელე, რომელიც ანელებს პროცესებს; ისინი სპონტანურად განაახლებენ ამ Firefox-ს, იმისდა მიუხედავად, რომ მე დავხურე ყველა სახის „ავტომატური ჩატვირთვა“ ინტერნეტიდან ჩემს კომპიუტერში, „გუგლის ძებნა“ ამოიღეს ყველა „საძიებო“ ადგილიდან Firefox ბრაუზერში).
და ეს შემაშფოთებელი „კრეკერები“ Google-ის ბრაუზერში, სავარაუდოდ, ასევე არის Google-ის მიმართ მისი კონკურენტული მტრობის შედეგი.

ფარქსად | 15 მარტი 2016, 20:28
ეს არის, სავარაუდოდ, ვირუსი, რომელიც, ისევე როგორც "მალსახოვანი ვირუსი" ფლეშ ბარათებიდან, შეიძლება ძალიან კარგად დაიმალოს. კიდევ ერთი მორალური ურჩხულის გამოგონება, „პრანკტერი“, რომელიც ვულგარულ ნუგეშს „ბავშვთა დივერსიაში“ ეძებს.

Alek55sandr5 | 10 ივლისი 2015, 12:02
ჯერ სცადეთ რეკომენდაციები წინა მომხმარებელი. რა თქმა უნდა, ეს უნდა დაეხმაროს. თუ არა, გადატვირთეთ თქვენი ბრაუზერის პარამეტრები. ამისათვის გადადით თქვენი ბრაუზერის პარამეტრებში და შემდეგ დააწკაპუნეთ "მოწინავე პარამეტრების ჩვენება". და პარამეტრების ფანჯრის ბოლოში დააჭირეთ ღილაკს "პარამეტრების გადატვირთვა". თუ არაფერი გეხმარებათ, მაშინ ბრაუზერი ხელახლა უნდა დააინსტალიროთ.