Często odwiedzaj tę stronę, aby dowiadywać się o zmianach w rozszerzeniach do Chrome, dokumentacji rozszerzeń, zasadach i innych powiązanych kwestiach. Inne powiadomienia znajdziesz na liście mailingowej dotyczącej rozszerzeń do Chrome. W harmonogramie Chrome znajdziesz daty publikacji wersji stabilnych i beta.
Film: odpowiedzi na pytania dotyczące widoczności w Chrome Web Store
Opublikowano
Odpowiedzi na pytania dotyczące odkrywania w Chrome Web Store znajdziesz w naszym najnowszym filmie.
Chrome 140: nowe API sidePanel.getLayout()
Opublikowano
Od Chrome w wersji 140 możesz używać nowego interfejsu sidePanel.getLayout() API, aby określić, czy panel boczny znajduje się po lewej czy po prawej stronie ekranu. Jest to szczególnie przydatne, jeśli obsługujesz języki zapisywane od prawej do lewej, w przypadku których domyślne ustawienie nowych instalacji Chrome jest inne.
Nowy przewodnik: cykl życia aktualizacji rozszerzeń
Opublikowano
Opublikowaliśmy nowy przewodnik wyjaśniający, jak rozszerzenia są aktualizowane w Chrome.
Chrome 139: usuwanie flag --extensions-on-chrome-urls i --disable-extensions-except w wersjach Chrome z logo
Opublikowano
Od Chrome 139 w oficjalnych wersjach Chrome zostaną usunięte flagi wiersza poleceń --extensions-on-chrome-urls i --disable-extensions-except. Więcej informacji znajdziesz na liście adresowej.
Chrome 138: zmiany na stronie nowej karty
Opublikowano
W Chrome 138 wprowadzamy nowy interfejs strony nowej karty z nowym stopką. Więcej informacji znajdziesz na liście adresowej.
Post na blogu: Zaktualizuj rozszerzenia przed wprowadzeniem zmian w zakładkach
Opublikowano
Wprowadzamy zmiany w synchronizacji zakładek, które mogą mieć wpływ na Twoje rozszerzenie. Więcej informacji znajdziesz w poście na blogu.
Post na blogu: Nowości w rozszerzeniach do Chrome w czerwcu 2025 r.
Opublikowano
Mamy za sobą Google I/O i wprowadziliśmy kilka nowych funkcji w Chrome i Chrome Web Store. Dowiedz się więcej w artykule Co nowego w rozszerzeniach do Chrome w czerwcu 2025 r.
Film: Whack-a-Mole w przeglądarce – czy to możliwe?
Data opublikowania:
Z naszego najnowszego filmu dowiesz się, jak utworzyć grę w przeglądarce.
Film: wyjaśnienie nowego menu rozszerzeń w Chrome
Opublikowano
Więcej informacji o eksperymentalnym nowym menu rozszerzeń znajdziesz w naszym najnowszym filmie Wyjaśnienie nowego menu rozszerzeń w Chrome .
Film: rozszerzenia są świetne!
Data publikacji:
Dowiedz się, jak zacząć tworzyć rozszerzenia, w odcinku 1 serii „Rozszerzenia są fajne”. Zobacz też, jak elastyczne jest dostosowywanie Chrome, w odcinku 2.
Chrome 135: nowe API userScripts.execute()
Opublikowano:
Od Chrome 135 w interfejsie chrome.userScripts API dostępna jest nowa metoda userScripts.execute(). Możesz użyć tej metody, aby wstrzyknąć skrypt użytkownika jednorazowo w dowolnym momencie, zamiast rejestrować go na stałe.
Chrome 132: wyświetlanie i edytowanie pamięci rozszerzeń w Narzędziach deweloperskich
Opublikowano
Od Chrome 132 możesz wyświetlać i edytować w Narzędziach deweloperskich dane przechowywane za pomocą interfejsu chrome.storage API. Więcej informacji znajdziesz na nowej stronie Wyświetlanie i edytowanie pamięci rozszerzenia w dokumentacji Narzędzi deweloperskich.
Post na blogu: nowe menu rozszerzeń
Opublikowano
Podczas Google I/O 2024 r. zaprezentowaliśmy wstępne projekty nadchodzących zmian w menu rozszerzeń, które zapewnią użytkownikom większą kontrolę nad tym, do jakich witryn rozszerzenia mogą uzyskiwać dostęp. Wkrótce zaczniemy testować te zmiany w niewielkiej grupie użytkowników wersji Canary. Mamy nadzieję, że w przyszłości będziemy mogli je szerzej udostępnić.
Wprowadzamy też interfejs chrome.permissions.addHostAccessRequest() API.
Więcej informacji znajdziesz w naszym poście na blogu.
Chrome 132: nowa właściwość frozen w interfejsie Tabs API
Opublikowano
Od Chrome 132 właściwość frozen w interfejsie Tabs API wskazuje, czy karta została zamrożona przez przeglądarkę. Wiadomości wysyłane na zamrożone karty będą umieszczane w kolejce i obsługiwane po odmrożeniu karty.
Interfejs Prompt API w rozszerzeniach do Chrome
Opublikowano
Interfejs Prompt API for Extensions jest teraz dostępny w ramach testowania origin, dzięki czemu możesz tworzyć rozszerzenia do Chrome, które w przeglądarce korzystają z Gemini Nano, naszego najbardziej wydajnego modelu językowego.
Dołącz do wersji próbnej interfejsu Prompt API, która będzie działać w Chrome w wersjach od 131 do 136, i prześlij swoją opinię. Twoje opinie mogą bezpośrednio wpłynąć na sposób, w jaki będziemy tworzyć i wdrażać przyszłe wersje tego interfejsu API oraz wszystkich wbudowanych interfejsów API AI.
Post na blogu: Nowości w rozszerzeniach do Chrome w październiku 2024 r.
Opublikowano
Czas na kolejne podsumowanie nowości w rozszerzeniach do Chrome: mamy dla Ciebie ciekawe informacje o integracji AI, nowych interfejsach API, wydarzeniach i filmach. Więcej informacji znajdziesz w artykule Co nowego w rozszerzeniach do Chrome w październiku.
Dołącz do wyzwania związanego z wbudowaną AI
Opublikowano
Chrome ogłosił konkurs „Built-in AI Challenge”. Zapraszamy do tworzenia innowacyjnych aplikacji internetowych i rozszerzeń do Chrome z wykorzystaniem zintegrowanych modeli AI i interfejsów API Chrome. Możesz wygrać nagrody o łącznej wartości 65 000 USD.
Zarejestruj się i dowiedz się więcej na stronie wyzwania dotyczącego wbudowanej AI. Nie możemy się doczekać, aby zobaczyć, co stworzysz, gdy wykorzystasz AI w internecie.
Chrome 130: action.onUserSettingsChanged
Opublikowano
Od Chrome 130 dostępne jest zdarzenie action.onUserSettingsChanged. Jest to zgodne z propozycją w grupie społeczności WebExtensions. Dziękujemy firmie Microsoft za wkład w rozwój Chromium.
Chrome 130: StorageArea.getKeys()
Opublikowano
Od Chrome 130 w interfejsie StorageArea używanym przez interfejs chrome.storage API dostępna jest metoda getKeys(). Jest to zgodne z propozycją w grupie społeczności WebExtensions.
Chrome 128: dopasowywanie nagłówków odpowiedzi w deklaratywnym żądaniu sieciowym
Opublikowano
W Chrome 128 dodajemy obsługę dopasowywania nagłówków odpowiedzi w interfejsie Declarative Net Request API. Było to częste żądanie, szczególnie w przypadku dopasowywania nagłówka Content-Type. Wspólnie z grupą WebExtensions Community Group zaprojektowaliśmy odpowiedni interfejs API.
Zaktualizowaliśmy dokumentację interfejsu API, aby uwzględnić nowe pola responseHeaders i excludedResponseHeaders. Możesz ich używać do sprawdzania, czy dany nagłówek istnieje i jaką ma wartość.
W ramach tej aktualizacji dodaliśmy do naszej dokumentacji nową sekcję Ocena reguł, w której wyjaśniamy, jak dopasowywane są reguły. W przypadku dopasowywania nagłówków reguły mogą być uruchamiane dopiero po otrzymaniu nagłówków odpowiedzi, więc są stosowane na późniejszym etapie niż inne reguły. Oznacza to, że żądanie dociera do serwera, zanim zostanie zablokowane lub przekierowane.
Film: czym są skrypty zawartości?
Opublikowano
Dowiedz się więcej o skryptach dotyczących zawartości w rozszerzeniach do Chrome, w tym o tym, jak rejestrować CSS i JavaScript, aby uruchamiać je na określonej stronie. Obejrzyj cały film
Ważne aktualizacje zasad
Opublikowano
Zespół Chrome Web Store opublikował serię aktualizacji na stronie Zasady programu dla deweloperów, które mają zachęcać do tworzenia produktów wysokiej jakości, zapobiegać wprowadzaniu użytkowników w błąd i zapewniać ich świadomą zgodę. Rebecca Soares, menedżer ds. zasad Chrome Web Store, podsumowała wszystkie zmiany w tym poście na blogu.
Post na blogu: Nowości w rozszerzeniach do Chrome w lipcu 2024 r.
Opublikowano
W ciągu ostatnich 3 miesięcy wprowadziliśmy kilka istotnych aktualizacji i nowych funkcji, w tym rozpoczęliśmy wycofywanie Manifestu V2. Dowiedz się więcej o nowościach w rozszerzeniach do Chrome w lipcu.
Film: co to jest kod hostowany zdalnie?
Opublikowano:
Patrick z zespołu rozszerzeń do Chrome wyjaśnia koncepcję kodu hostowanego zdalnie w rozszerzeniach do Chrome. Dowiedz się, dlaczego RHC nie jest już dozwolone, jak je wykrywać i co zrobić, jeśli Twoje rozszerzenie wymaga aktualizacji. Obejrzyj cały film
Chrome 127: nowy interfejs API action.openPopup
Opublikowano:
Od Chrome 127 interfejs action.openPopup jest dostępny dla wszystkich rozszerzeń. Wcześniej był on dostępny tylko w wersji Canary lub w przypadku rozszerzeń zainstalowanych na podstawie zasad.
Film: wywiad z zespołem ds. zaufania i bezpieczeństwa
Opublikowano:
Zespół ds. relacji z deweloperami rozszerzeń do Chrome spotkał się z zespołem ds. zaufania i bezpieczeństwa, który prowadzi weryfikację w Chrome Web Store, aby zadać mu Twoje pytania. Obejrzyj cały film
Post na blogu: rozpoczyna się wycofywanie platformy Manifest V2
Opublikowano:
Od 3 czerwca w wersjach beta, deweloperskiej i Canary Chrome użytkownicy, którzy nadal mają zainstalowane rozszerzenia platformy Manifest V2, zaczną widzieć baner z ostrzeżeniem podczas odwiedzania strony zarządzania rozszerzeniami – chrome://extensions. Będzie on informować, że niektóre zainstalowane rozszerzenia (platformy Manifest V2) wkrótce przestaną być obsługiwane. Więcej informacji znajdziesz w oficjalnym ogłoszeniu.
Aktualizacje interfejsu panelu bocznego
Opublikowano
Niedawno wprowadziliśmy kilka zmian w interfejsie panelu bocznego, w tym dodaliśmy ikonę pinezki i usunęliśmy globalną ikonę panelu bocznego. Więcej informacji znajdziesz w komunikacie PSA. Zapoznaj się też z naszą zaktualizowaną dokumentacją i przykładami.
Post na blogu: Rozszerzenia do Chrome na Google I/O 2024
Opublikowano
Kolejna konferencja Google I/O za nami. Omówiliśmy wszystkie ekscytujące nowości dotyczące rozszerzeń. Obejrzyj pełny film w YouTube i przeczytaj nasz post na blogu, aby poznać najważniejsze informacje.
Pomiń weryfikację kwalifikujących się zmian w deklaratywnym żądaniu sieciowym
Data opublikowania:
Chrome Web Store umożliwia teraz pomijanie sprawdzania kwalifikujących się zmian podczas korzystania z interfejsu Declarative Net Request API. Więcej informacji o kryteriach kwalifikacji i sposobie rejestracji znajdziesz w dokumentacji Chrome Web Store.
deployPercentage dostępny w interfejsie Chrome Web Store API
Opublikowano
Niedawno zaktualizowaliśmy dokumentację interfejsu Chrome Web Store API, aby dodać informacje o parametrze deployPercentage, który umożliwia przypisanie procentu wdrożenia częściowego. Więcej informacji o deployPercentage
Chrome 126: testy origin w rozszerzeniach
Opublikowano
W Chrome 126 wprowadziliśmy nowe pole manifest.json – trial_tokens, które umożliwia włączenie wersji próbnych origin i wersji próbnych wycofywania na wszystkich powierzchniach rozszerzeń. Więcej informacji znajdziesz w przewodniku.
Post na blogu: Co się dzieje w rozszerzeniach do Chrome – kwiecień 2024 r.
Opublikowano:
Opublikowaliśmy nową edycję Nowości w rozszerzeniach do Chrome. Post opisuje, nad czym zespół ds. rozszerzeń pracował w ciągu ostatnich kilku miesięcy. Obejmuje to m.in. przywracanie wersji w Chrome Web Store, lepszą obsługę Firebase Auth oraz więcej premier i aktualizacji interfejsów API.
Wycofywanie wersji w Panelu dewelopera Chrome Web Store
Opublikowano
Przywróć poprzednią opublikowaną wersję rozszerzenia w Chrome Web Store bez dodatkowej weryfikacji. Więcej informacji znajdziesz w poście na blogu i dokumentacji.
Chrome 124: zaawansowany interfejs API documentScan
Data publikacji:
W ChromeOS jest teraz dostępny zaawansowany documentScaninterfejs API, który umożliwia wykrywanie i pobieranie obrazów z podłączonych skanerów dokumentów.
Chrome 124: obsługa WebGPU w skryptach service worker
Data publikacji:
Od Chrome 124 service workery obsługują WebGPU. Aby szybko zacząć, zapoznaj się z przykładowym rozszerzeniem WebGPU.
Chrome 123: interfejs Events API obsługuje filtrowanie według bloków CIDR
Data publikacji:
Interfejs Events API obsługuje teraz filtrowanie według bloków międzydomenowego routingu bez klasy (CIDR). Blok CIDR to zbiór adresów IP, które mają wspólny prefiks sieci i tę samą liczbę bitów. Wcześniej deweloper, który chciał odfiltrować wiele adresów IP, musiał skonfigurować regułę filtra dla każdego adresu w zakresie bloków. Teraz, gdy rozszerzenie wywołuje
addListener(), przekazana reguła oznacza, że procedura obsługi zdarzeń zostanie wywołana tylko wtedy, gdy część hosta adresu URL jest adresem IP i znajduje się w jednym z bloków CIDR określonych w tablicy.
Chrome Web Store: zmiany w wymaganiach dotyczących długości nazwy rozszerzenia
Opublikowano
W Chrome Web Store obowiązuje teraz uniwersalny limit 75 znaków w przypadku pola "name" rozszerzenia w pliku manifest.json. Wcześniej limit znaków w języku angielskim wynosił 45, a w przypadku innych języków nie było ograniczeń dotyczących pola "name".
Pierwotnie miało to uwzględniać różnice kulturowe i językowe, których nie można było wyrazić w tej samej liczbie znaków. Niestety ta funkcja była nadużywana przez niewielką liczbę deweloperów do spamowania sklepu. Wprowadzamy więc nowe uniwersalne ograniczenie, które wynosi 75 znaków. Ten limit obejmuje prawie wszystkie rozszerzenia dostępne obecnie w sklepie, więc w wyniku tej zmiany prawdopodobnie nie będziesz musiał(-a) nic robić. Jeśli spróbujesz przesłać rozszerzenie o nazwie dłuższej niż limit, sklep zablokuje przesyłanie.
Post na blogu: eyeo i testowanie zawieszania instancji roboczych usługi
Opublikowano
W tym poście zespołu eyeo ds. Extension Engine omawiamy problem testowania procesów roboczych usług rozszerzeń. W przypadku platformy Manifest V2 rozszerzenia działały na stronie w tle, która była aktywna przez cały cykl życia rozszerzenia. Manifest V3 używa skryptów service worker, które z założenia oszczędzają zasoby, wyłączając się, gdy nie są potrzebne. Stwarza to pewne wyzwania związane z testowaniem. Z tego posta dowiesz się, jak firma eyeo poradziła sobie z tymi wyzwaniami.
Chrome 123: alarmy działają teraz, gdy urządzenie jest uśpione
Opublikowano
Alarmy ustawione za pomocą interfejsu chrome.alarms API nie są już opóźniane, gdy urządzenie przechodzi w tryb uśpienia. Gdy urządzenie się wybudzi, alarm włączy się tylko raz, niezależnie od tego, ile alarmów zostało pominiętych. Załóżmy na przykład, że alarm jest ustawiony tak, aby włączał się raz na godzinę, a urządzenie, na którym jest ustawiony, jest w trybie uśpienia od 00:55 do 2:05. W takim przypadku tylko alarm o godzinie 2:00 wywoła zdarzenie onAlarm.
Uruchomi się jak najbliżej godziny 2:00, a jeśli urządzenie było uśpione, od razu po jego wybudzeniu.
Dzięki tej zmianie Chrome będzie działać zgodnie z ustaleniami grupy Web Extensions Community Group.
Post na blogu: Zmiany w działaniu pamięci podręcznej typu „wstecz/do przodu” w przypadku portów wiadomości rozszerzeń
Opublikowano
Pamięć podręczna stanu strony internetowej (bfcache) to optymalizacja przeglądarki, która umożliwia błyskawiczną nawigację w obu kierunkach. Od Chrome 123, gdy strona z otwartym portem rozszerzenia jest przechowywana w pamięci podręcznej stanu strony internetowej, kanał wiadomości jest zamykany, co oznacza, że do tej strony nie będą wysyłane żadne wiadomości.
W związku z tym skrypty rozszerzeń powinny nasłuchiwać zdarzeń cyklu życia, takich jak onDisconnect, i konfigurować nowe połączenie, gdy strona jest przywracana z pamięci podręcznej typu „wstecz/do przodu”.
Więcej informacji i przykładowy kod znajdziesz w artykule Zmiany w działaniu pamięci podręcznej BFCache w przypadku portów wiadomości rozszerzenia.
Chrome 122: obsługa obietnic w asynchronicznych interfejsach API rozszerzeń
Opublikowano:
Zakończyliśmy wdrażanie obsługi Promise we wszystkich asynchronicznych metodach interfejsu API rozszerzeń. Zostało to zrobione w celu unowocześnienia metod interfejsu API przez poprawę ergonomii obsługi operacji asynchronicznych. Niektóre metody (np. desktopCapture.chooseDesktopMedia()) nadal obsługują tylko wywołania zwrotne, ponieważ ich obecne platformy nie są zgodne z obiektami Promise. Na potrzeby zgodności wstecznej wywołania zwrotne są nadal obsługiwane. Jeśli znajdziesz obietnicę, która nie działa, zgłoś błąd.
Nowe wytyczne dotyczące komunikacji w czasie rzeczywistym
Opublikowano
Opublikowaliśmy właśnie przewodniki po opcjach w czasie rzeczywistym w rozszerzeniach. Aktualizacje w czasie rzeczywistym zapewniają natychmiastową ścieżkę komunikacji z serwerów bezpośrednio do instalacji rozszerzenia. Dodaliśmy też nowe wskazówki dotyczące korzystania z chrome.gcm i Web Push.
Nowe wskazówki i przykłady: testowanie zakończenia działania service workera
Opublikowano
Właśnie opublikowaliśmy przewodnik na temat testowania zakończenia działania service workera za pomocą Puppeteera. Przykładowy kod pokazuje, jak to zrobić w Puppeteer i Selenium.
Zaktualizowany przykład wiadomości natywnych
Opublikowano
Właśnie opublikowaliśmy zaktualizowany przykład wiadomości natywnych. Ten interfejs API umożliwia rozszerzeniu uruchamianie innej aplikacji i komunikowanie się z nią. Dziękujemy za pomoc użytkownikowi GitHuba Shubham-Rasal.
Chrome 121: nowa właściwość lastAccessed w przypadku tabs.Tab
Opublikowano
Do obiektu tabs.Tab dodaliśmy nową właściwość o nazwie lastAccessed. Ta właściwość wskazuje, kiedy karta została ostatnio aktywowana. Zwracana wartość jest podana w milisekundach od początku epoki.
Chrome 121: nieobsługiwane klucze „w tle” teraz wyświetlają ostrzeżenie
Data opublikowania:
W ramach przejścia z Manifest V2 na Manifest V3 elementy podrzędne klucza manifestu "background" zostały zmienione, aby umożliwić zastąpienie skryptów działających w tle przez procesy robocze usługi rozszerzenia. Wcześniej dodanie kluczy Manifest V2 "scripts", "page" lub "persistent" do klucza "background" rozszerzenia Manifest V3 powodowało błąd. Obecność tych kluczy powoduje teraz wyświetlenie ostrzeżenia.
Robimy to, aby umożliwić używanie jednego pliku manifestu w rozszerzeniach w wielu przeglądarkach, zgodnie z propozycją w grupie społeczności.
Chrome 120: zmniejszenie minimalnej ziarnistości alarmu do 30 sekund
Opublikowano
Od Chrome 120 rozszerzenia Manifest V3 mogą używać interfejsu API chrome.alarms z opóźnieniami lub okresami 30-sekundowymi, zamiast wymagać wartości 60 sekund lub więcej.
Post na blogu: Wracamy do procesu przejścia na platformę Manifest V3
Opublikowano
Zaktualizowaliśmy harmonogram wsparcia Manifest V2. Więcej informacji znajdziesz w naszym poście na blogu z listopada 2023 r.
Post na blogu: ulepszenia obsługi filtrowania treści w Manifest V3
Opublikowano
Więcej informacji o ulepszeniach interfejsu declarativeNetRequest API znajdziesz w naszym nowym poście na blogu.
Post na blogu: Nowości w Chrome 120 dotyczące rozszerzeń
Opublikowano
Niedawno została udostępniona Chrome 120 w wersji beta. Podsumowanie ważnych aktualizacji dla deweloperów rozszerzeń znajdziesz w naszym nowym poście na blogu: Nowości w Chrome 120 dla rozszerzeń. Ta wersja stanowi też ważny kamień milowy, ponieważ usuwa z listy krytycznych luk w platformie ostatnie 2 elementy (userScripts, file handler on ChromeOS).
PSA: zmiana sposobu obsługi adresów URL polityki prywatności w Panelu dewelopera
Data opublikowania:
Polityki prywatności w Panelu dewelopera są teraz dodawane na poziomie produktu. Dzięki temu możesz podać inną politykę prywatności dla każdego produktu. Więcej informacji o tej zmianie znajdziesz w naszym PSA.
Film: rozmowa z Mattem Frisbie
Opublikowano:
Na kanale Chrome dla deweloperów w YouTube opublikowaliśmy właśnie nowy film, w którym rozmawiamy z Mattem Frisbie, ekspertem Google ds. rozwoju i autorem. Obejrzyj go tutaj.
Nowe wskazówki dotyczące testowania rozszerzeń
Data opublikowania:
Opublikowaliśmy właśnie nowe wskazówki dotyczące pisania testów automatycznych rozszerzeń, w tym pisania testów jednostkowych, a także ogólne wskazówki i samouczek dotyczący testów kompleksowych.
Post na blogu: Co się dzieje w rozszerzeniach do Chrome – październik 2023 r.
Opublikowano
Opublikowaliśmy właśnie drugą edycję What’s Happening in Chrome Extensions. W poście omówiono, nad czym zespół ds. rozszerzeń pracował w ciągu ostatnich kilku miesięcy, m.in. nad rozwiązaniem problemów ze stabilnością service workerów i nad poczynieniem znacznych postępów w wypełnianiu wszystkich luk na platformie MV3. Informujemy też o nadchodzących wersjach interfejsów API, takich jak interfejs API listy do przeczytania i interfejs API skryptów użytkownika.
Zwiększone limity statycznych zestawów reguł w interfejsie Declarative Net Request API
Opublikowano
W odpowiedzi na opinie w grupie społecznościowej Web Extensions znacznie zwiększamy limit włączonych statycznych zestawów reguł z 10 do 50. Zwiększamy też łączną liczbę dozwolonych statycznych zestawów reguł z 50 do 100. Ta funkcja jest obecnie dostępna w Canary.
Ulepszone wskazówki dotyczące kodu hostowanego zdalnie
Opublikowano
Wymaganie dotyczące platformy Manifest V3 polega na tym, że rozszerzenia nie mogą już używać kodu hostowanego zdalnie. Chociaż ten problem od początku był częścią naszego przewodnika po migracji, uznaliśmy, że warto ulepszyć wskazówki dotyczące tego zagadnienia. Na tej stronie znajdziesz teraz więcej informacji o tym, co jest nadal możliwe w przypadku Manifestu V3, oraz o strategiach uaktualniania.
Dodaliśmy powiązany artykuł Rozwiązywanie problemów związanych z naruszeniem zasad Chrome Web Store. W nowej sekcji opisujemy typowe przyczyny odrzucania rozszerzeń z kodem hostowanym zdalnie.
Chrome 118: wartość domyślna parametru isUrlFilterCaseSensitive to teraz false
Data publikacji:
Od Chrome w wersji 118 właściwość isUrlFilterCaseSensitive w interfejsie chrome.declarativeNetRequest została zmieniona na domyślną wartość false. Jeśli chcesz zachować stare działanie, możesz w regułach declarativeNetRequest jawnie ustawić isUrlFilterCaseSensitive na true.
Jest to zgodne z dyskusjami w grupie społecznościowej Web Extensions. Podobne zmiany zostały już wprowadzone w przeglądarkach Firefox i Safari.
Dokumentacja dotycząca plików cookie i interfejsów API pamięci internetowej
Opublikowano
Opublikowaliśmy nowy przewodnik na temat działania plików cookie i interfejsów API pamięci internetowej w rozszerzeniach do Chrome. Zawiera szczegółowe informacje o zmianach w partycjonowaniu plików cookie i miejsca na dane w Piaskownicy prywatności, czyli w projekcie, którego celem jest wycofanie plików cookie innych firm poprzez utworzenie serii nowych interfejsów API platformy internetowej, a także szczegółowe informacje o tym, jak działają one w rozszerzeniach.
Przykłady rozszerzeń można teraz wyszukiwać
Opublikowano
Niedawno utworzyliśmy stronę, na której możesz wyszukiwać przykłady rozszerzeń do Chrome. Strona wyszukiwania ma wiele opcji. Pole wyszukiwania umożliwia wyszukiwanie tekstu w tytułach próbek. Możesz ograniczyć wyszukiwanie według uprawnień lub interfejsu API rozszerzenia. Dodatkowy filtr umożliwia ograniczenie wyszukiwania do przykładów interfejsu API lub przykładów funkcjonalnych (przypadków użycia).
Ta nowa strona przykładowa została utworzona przez Xuezhou Dai, uczestnika programu Google Summer of Code, który opracował też kilka nowych przykładów. O swoich doświadczeniach z zeszłego lata piszą w poście na naszym blogu.
Jak wcześniej, nasze przykłady kodu są nadal dostępne na GitHubie do sklonowania lub rozwidlenia.
Chrome 118: zmiany w otwieraniu plików: adresy URL schematu
Opublikowano
Od Chrome 118 rozszerzenia będą musiały mieć włączone ustawienie „Zezwalaj na dostęp do adresów URL plików” na stronie chrome://extensions, aby otwierać adresy URL schematu file:// za pomocą interfejsów Tabs lub Windows API. Dostęp ten możesz sprawdzić programowo, wywołując funkcję chrome.extension.isAllowedFileSchemeAccess(). Firefox już ogranicza adresy URL plików, a Safari obsługuje tę zmianę. Więcej informacji znajdziesz w poście na liście adresowej rozszerzeń do Chrome.
Chrome 117: rozszerzona ochrona adresów URL w przypadku nawigacji w interfejsie API rozszerzenia
Data opublikowania:
Wcześniej nawigacja wywoływana przez wywołania interfejsu API rozszerzenia dla tabs.update(), tabs.create() i windows.create() powodowała błąd w przypadku niektórych adresów URL chrome://. Dodatkowo wywoływanie tabs.update() z adresem URL JavaScriptu było zabronione. W wersji 117 rozszerzyliśmy ochronę adresów URL JavaScript na metodę tabs.create() i dodaliśmy do listy zabronionych adresów URL kilka dodatkowych adresów URL chrome://, które mają zastosowanie do wszystkich wspomnianych wcześniej metod.
Ulepszone wskazówki dotyczące interfejsu declarativeNetRequest API
Opublikowano
Interfejs chrome.declarativeNetRequest API blokuje lub modyfikuje żądania sieciowe, określając reguły deklaratywne. Umożliwia to rozszerzeniom modyfikowanie żądań sieciowych bez ich przechwytywania i wyświetlania ich zawartości, co zapewnia użytkownikom większą prywatność. Jest też trudne w użyciu. W związku z tym zmieniliśmy treść wytycznych, aby lepiej wyjaśnić, jak wdrażać deklaratywne zestawy reguł. Przeczytaj nową sekcję, klikając link powyżej.
Korzystanie z konta Google Analytics w Chrome Web Store
Opublikowano
Chrome Web Store oferuje integrację z Google Analytics, która umożliwia wyświetlanie statystyk dotyczących Twojej karty w Chrome Web Store oprócz widoku dostępnego w Panelu dewelopera. Więcej informacji znajdziesz w artykule Korzystanie z konta Google Analytics w Chrome Web Store.
Chrome 115: Narzędzia deweloperskie domyślnie pomijają skrypty treści
Data publikacji:
Wstrzykiwane skrypty treści są teraz domyślnie na liście ignorowanych w Narzędziach deweloperskich. Nie ma to wpływu na punkty przerwania, ale oznacza, że podczas debugowania skrypty treści będą pomijane, a wyjątki z tych skryptów będą ignorowane. Gdy skrypt dotyczący zawartości jest otwarty na karcie Źródła, baner informuje, czy ta opcja jest włączona, i umożliwia usunięcie skryptu dotyczącego zawartości z listy ignorowanych. Aby wyłączyć to zachowanie, otwórz Narzędzia deweloperskie, kliknij Ustawienia, a potem Lista ignorowanych. Więcej informacji znajdziesz w artykule Nowości w Narzędziach deweloperskich.
Chrome 116 w wersji beta: więcej niż możemy tu zmieścić
Data publikacji:
Chrome 116 to ważna wersja dla rozszerzeń. Panele boczne możesz teraz otwierać programowo. Nowa metoda pozwala sprawdzić, czy istnieje aktywny dokument poza ekranem. Usługi Service Worker zostały ulepszone. Wersja 116 zawiera tyle ulepszeń, że napisaliśmy o nich posta na blogu. 19 lipca rozpoczęły się testy wersji beta Chrome 116.
Post na blogu: Co się dzieje w przypadku rozszerzeń do Chrome
Data opublikowania:
Opublikowaliśmy właśnie przegląd tegorocznych zmian i ulepszeń dotyczących rozszerzeń. W tym poście omówiono najważniejsze nowe funkcje wprowadzone w tym roku, w tym interfejs Side Panel API, ulepszenia dotyczące service workerów i dokumenty poza ekranem. Zobaczysz też, nad czym pracujemy w tym kwartale. W artykule znajdziesz ich znacznie więcej wraz z linkami do wszystkich.
Nowe wskazówki i przykłady: dowiedz się, jak używać Google Analytics 4 w rozszerzeniu do Chrome
Opublikowano:
Opublikowaliśmy nowe wskazówki i przykłady dotyczące Google Analytics i geolokalizacji:
- Zaktualizowana wersja naszych wskazówek dotyczących Google Analytics, w której wyjaśniamy, jak używać Google Analytics 4 w rozszerzeniu do Chrome. Do naszego przykładowego repozytorium w GitHubie dodaliśmy też działający przykładowy kod Google Analytics 4. W
google-analytics.jsznajdziesz odpowiedni kod związany z Google Analytics. - Nowy przewodnik po geolokalizacji i 3 przykłady pokazujące, jak uzyskać dostęp do geolokalizacji w procesach roboczych usługi, skryptach treści, wyskakujących okienkach i panelach bocznych.
Chrome 115: określanie wielu powodów w chrome.offscreen.createDocument()
Opublikowano:
Podczas wywoływania funkcji chrome.offscreen.createDocument() możesz teraz określić kilka wyliczeń reason. Użyj tej opcji, gdy dokument poza ekranem będzie używany do różnych celów. Przeglądarka używa podanych powodów do określenia czasu życia dokumentu poza ekranem.
Nowe narzędzie: narzędzie do testowania aktualizacji rozszerzeń
Opublikowano:
Właśnie udostępniliśmy narzędzie do testowania aktualizacji rozszerzeń, czyli lokalny serwer aktualizacji rozszerzeń, którego można używać do testowania aktualizacji rozszerzeń do Chrome podczas lokalnego programowania, w tym przyznawania uprawnień. Narzędzie pokazuje proces aktualizacji użytkownika, w tym pozostawienie rozszerzenia wyłączonego do momentu, gdy użytkownik przyzna nowo wymagane uprawnienia. To narzędzie jest szczególnie przydatne do symulowania zmian uprawnień wymaganych podczas aktualizowania rozszerzenia z Manifest V2 do Manifest V3.
Chrome 114: nowy interfejs Side Panel API
Data publikacji:
Przedstawiamy nowy interfejs Side Panel API, który umożliwia użytkownikom dostęp do narzędzi podczas przeglądania treści. Więcej informacji znajdziesz w dokumentacji interfejsu Side Panel API. Dodaliśmy też wiele przykładów paneli bocznych do naszego repozytorium z przykładami w GitHubie. Więcej informacji o panelach bocznych znajdziesz w nowym poście na blogu Projektowanie doskonałego środowiska użytkownika za pomocą nowego interfejsu Side Panel API. Sprawdziliśmy też nasze zasady dotyczące wytycznych jakości i sprawdzone metody, aby zapewnić dodatkowe wskazówki dotyczące tworzenia wysokiej jakości rozszerzeń panelu bocznego.
Twoja opinia jest dla nas ważna przy tworzeniu tego interfejsu API. Podziel się swoimi przemyśleniami i propozycjami nowych funkcji w chromium-groups. Będziemy na bieżąco informować o nowościach wprowadzanych w interfejsie Side Panel API.
Nowe przykłady: WASM w rozszerzeniach
Opublikowano
Dostępne są 2 nowe przykłady, które pokazują, jak używać WASM w rozszerzeniu:
- W artykule Używanie WASM w Manifest V3 znajdziesz ogólną metodę dodawania modułu WASM.
- W artykule Używanie WASM jako modułu w pliku manifestu V3 znajdziesz informacje o tym, jak używać go w module.
Specjalne podziękowania dla współtwórcy GitHub @daidr za te przykłady.
Zaktualizowane wskazówki dotyczące migracji na platformę Manifest V3
Data opublikowania:
Zaktualizowaliśmy sekcję Znane problemy w naszym przewodniku po migracji do Manifestu V3, dodając zaktualizowaną listę luk w platformie rozszerzeń, które zamierzamy wyeliminować przed ogłoszeniem nowego harmonogramu wycofywania Manifestu V2.
Nagrywanie dźwięku i obrazu w przypadku pliku manifestu w wersji 3
Data opublikowania:
Opublikowaliśmy właśnie nowy artykuł Nagrywanie dźwięku i zrzuty ekranu, w którym opisujemy nagrywanie dźwięku lub wideo z karty, okna lub ekranu w Manifest V3. W tym artykule opisujemy różne sposoby nagrywania z użyciem interfejsu API chrome.tabCapture i funkcji getDisplayMedia().
Chrome 114: zwiększony limit storage.local
Data publikacji:
Zwiększyliśmy limit miejsca na usługę storage.local do około 10 MB. Zostało to uzgodnione w grupie społecznościowej ds. rozszerzeń internetowych. Dzięki temu wartość storage.local będzie zgodna z wartością storage.session, która została zmieniona w Chrome 112.
Samouczek i pomoc dotyczące nowego rozszerzenia service worker
Data publikacji:
Service Worker to integralna część rozszerzeń do Chrome. Właśnie opublikowaliśmy samouczek, w którym wyjaśniamy podstawy rejestrowania, debugowania i używania Service Workerów. Dodaliśmy też nowy przewodnik po service workerach, w którym szczegółowo wyjaśniamy ważne pojęcia. W najbliższych miesiącach rozbudujemy tę sekcję.
Więcej wskazówek dotyczących rozwiązywania problemów z naruszeniami zasad w Chrome Web Store
Opublikowano
Aby ułatwić publikowanie w Chrome Web Store, dodaliśmy nowe wskazówki w 2 obszarach. Wskazówki dotyczące minimalnej funkcjonalności koncentrują się na zapewnianiu użytkownikom korzyści i wzbogacaniu ich doświadczeń związanych z przeglądaniem. Wskazówki dotyczące reklam stowarzyszonych mają na celu informowanie użytkowników o rozszerzeniach korzystających z linków lub kodów stowarzyszonych w celu zarabiania pieniędzy oraz zapewnienie im pewnej kontroli poprzez wymaganie działania użytkownika przed uwzględnieniem tych elementów.
Nowe instrukcje dotyczące konwertera pliku manifestu rozszerzenia
Data opublikowania:
Przeredagowaliśmy plik README konwertera pliku manifestu rozszerzenia, aby ułatwić Ci sprawdzenie, co musisz zrobić po uruchomieniu narzędzia. Konwerter pomaga przenieść rozszerzenia utworzone na platformie Manifest V2 na platformę Manifest V3. Nowy plik README opisuje działanie narzędzia za pomocą słów, które są bardzo podobne do tych użytych na liście kontrolnej w przewodniku migracji. Konwerter nie wykonuje wszystkich czynności, ale eliminuje wiele zadań, które nie wymagają ludzkiej oceny.
Chrome 113: nowe powody używania dokumentów poza ekranem
Opublikowano
Dodaliśmy do interfejsu Offscreen Documents API 2 nowe typy przyczyn. Użyj LOCAL_STORAGE, aby uzyskać dostęp do interfejsu API localStorage platformy internetowej. Podczas tworzenia procesów roboczych w internecie używaj WORKER.
Google Analytics 4 w Panelu dewelopera
Data publikacji:
Panel dewelopera Chrome Web Store obsługuje teraz Google Analytics 4 (GA4). Uprościliśmy konfigurację Google Analytics i ułatwiliśmy zarządzanie dostępem w przypadku wydawców grup. Jeśli do śledzenia aktywności w informacjach o sklepie używasz Google Universal Analytics, musisz podjąć działania do 1 lipca 2023 r., aby nadal otrzymywać dane o informacjach o sklepie. Więcej informacji znajdziesz w poście na liście adresowej rozszerzeń do Chrome.
Interfejs File Handling API w ChromeOS
Opublikowano
Interfejs File Handler API jest dostępny do testowania w ChromeOS w wersji Canary 112 i 113. Umożliwia rozszerzeniom w ChromeOS otwieranie plików o określonych typach MIME i rozszerzeniach. Aby wdrożyć obsługę plików, dodaj zestaw reguł do manifest.json. Ta funkcja działa tak samo jak w przypadku progresywnych aplikacji internetowych. Więcej informacji znajdziesz w artykule w innej części tej witryny.
Aby włączyć obsługę plików:
- Od wersji 112 uruchamiaj Chrome za pomocą flagi
--enable-features=ExtensionWebFileHandlers. - W wersji 113 wklej
os://flags/#extension-web-file-handlersdo paska adresu Chrome i z menu wybierz „Włączone”.
Planujemy udostępnić tę funkcję w Chrome 115 pod koniec czerwca. Będziemy tu publikować aktualne informacje.
Nowe przykłady: deklaracje dynamiczne i wstrzykiwanie programowe
Data opublikowania:
Przygotowaliśmy nowy przykład dla interfejsu chrome.scripting API. Pokazuje dynamiczne deklaracje, w których skrypt treści jest rejestrowany w czasie działania, oraz wstrzykiwanie programowe, w którym skrypt jest wykonywany na już otwartej karcie.
Nowe przykłady: przypadki użycia deklaratywnego żądania sieciowego
Data publikacji:
Dostępne są 3 nowe przykłady, które pokazują działanie interfejsu Declarative Net Request API. Każdy z nich pokazuje implementację jednego przypadku użycia. Pierwszy pokazuje, jak blokować pliki cookie. Pozostałe 2 przykłady pokazują blokowanie adresów URL i przekierowywanie do nich.
Chrome 112: zwiększony limit miejsca na dane sesji
Data publikacji:
Od Chrome 112 limit miejsca na dane w przypadku właściwości storage.session został zwiększony do około 10 MB. Zostało to uzgodnione w grupie społecznościowej ds. rozszerzeń internetowych: https://github.com/w3c/webextensions/issues/350
Chrome 109: dokumenty poza ekranem
Data publikacji:
Dokumenty poza ekranem są teraz dostępne w rozszerzeniach Manifest V3. Ułatwiają one przejście ze stron w tle na skrypty service worker rozszerzeń, ponieważ obsługują funkcje i interfejsy API związane z DOM. Więcej informacji znajdziesz w tym poście na blogu.
Chrome 110: czy rozszerzenie jest włączone
Opublikowano
Metoda chrome.action.isEnabled() programowo sprawdza, czy rozszerzenie zostało włączone na określonej karcie. Dzięki temu nie musisz utrzymywać stanu włączonych kart. Ta nowa metoda przyjmuje identyfikator karty i odwołanie do wywołania zwrotnego oraz zwraca wartość logiczną. Ma ono jedno ograniczenie: karty utworzone za pomocą chrome.declarativeContent zawsze zwracają wartość false.
(Przestrzeń nazw chrome.action ma ostatnio nowe metody kontrolowania wyglądu plakietek rozszerzeń. Więcej informacji znajdziesz w artykule Ustawianie kolorów plakietek).
Chrome 110: zmiana limitu czasu bezczynności w przypadku skryptu service worker
Data publikacji:
Wcześniej proces roboczy usługi rozszerzenia często zamykał się po 5 minutach. Zmieniliśmy to zachowanie, aby bardziej przypominało okres istnienia service workerów w internecie. Proces roboczy usługi rozszerzenia zostanie zamknięty po 30 sekundach bezczynności lub jeśli przetworzenie pojedynczego działania zajmie więcej niż 5 minut. Więcej informacji znajdziesz w artykule Dłuższy czas działania komponentu service worker rozszerzenia.
Post: Wstrzymanie wycofywania platformy Manifest V2
Opublikowano
Harmonogram wycofywania platformy Manifest V2 jest obecnie sprawdzany, a eksperymenty zaplanowane na początek 2023 roku zostaną przełożone. Więcej informacji znajdziesz w tym artykule na liście mailingowej rozszerzeń do Chrome.
Chrome 110: ustawianie kolorów plakietek
Opublikowano
Przestrzeń nazw chrome.action ma 2 nowe metody, które zapewniają większą kontrolę nad wyglądem plakietek rozszerzeń. Metody setBadgeTextColor() i getBadgeTextColor() umożliwiają rozszerzeniu zmianę koloru tekstu na plakietce ikony na pasku narzędzi i wysyłanie zapytań o ten kolor. W połączeniu z setBadgeBackgroundColor i getBadgeBackgroundColor te nowe metody pozwalają zachować spójność projektu i marki.
Post na blogu: więcej informacji o przejściu na platformę Manifest V3
Opublikowano
Wyjaśniliśmy harmonogram wycofania platformy Manifest V2. Zaktualizowaliśmy też harmonogram wsparcia Manifest V2, aby odzwierciedlał te informacje.
Aktualizacja dokumentacji: znane problemy podczas migracji na Manifest V3
Opublikowano
Przygotowaliśmy listę głównych funkcji, które są obecnie w fazie rozwoju, oraz otwartych zgłoszeń błędów. Naszym celem jest pomóc deweloperom lepiej zrozumieć obecny stan platformy i funkcje, na których mogą się skupić, przygotowując się na przyszłość.
Chrome Web Store: usunięto przesyłanie obrazu „dużego kafelka promocyjnego”
Opublikowano
Chrome Web Store usunął interfejs przesyłania „dużego kafelka promocyjnego” z karty Informacje o produkcie w Panelu dewelopera. Ta zmiana nie wpływa na wygodę użytkowników, ponieważ te obrazy nie były używane w interfejsie użytkownika. Więcej informacji znajdziesz w tym poście na temat rozszerzeń do Chromium.
Chrome 106: zezwalanie stronom z adresami URL typu file:// na dostęp do zasobów dostępnych w internecie
Opublikowano
Nieprzezroczyste źródła, takie jak piaskownice iframe i import dynamiczny, również powinny mieć dostęp do zasobów dostępnych w internecie zgodnie z crbug.com/1219825#c11.
Chrome 106: naprawiono błąd, który powodował, że w przypadku niektórych funkcji asynchronicznego interfejsu API ostatnie argumenty były nieprawidłowe.
Opublikowano
Wcześniej wywołanie asynchronicznych interfejsów API w pliku manifestu w wersji 3 mogło zawierać nieprawidłowy argument końcowy, a Chrome nie zgłaszał błędu. Po wprowadzeniu tej poprawki Chrome będzie prawidłowo zgłaszać błąd i informować, że nie znaleziono pasującego podpisu. Zachęcamy deweloperów do sprawdzania rozszerzeń w wersji Canary pod kątem błędów, które mogą wystąpić w przypadku przypadkowego użycia nieprawidłowego podpisu wywołania interfejsu API, które zostanie usunięte przez tę poprawkę.
Post na blogu: zmiany w statystykach Chrome Web Store
Data publikacji:
W Chrome Web Store wprowadziliśmy odświeżone statystyki dotyczące elementów w Panelu dewelopera Chrome Web Store. Nowy panel jest bardziej przejrzysty i zawiera najważniejsze informacje. Więcej informacji znajdziesz w poście na blogu.
Chrome 105: obietnice dotyczące interfejsu Identity API
Opublikowano:
Funkcje w Identity API obsługują teraz wywołania oparte na obietnicach. W związku z tym wprowadziliśmy niewielką zmianę w interfejsie identity.getAuthToken(). W przypadku asynchronicznego zestawu zwracanego ustawionego na wywołanie oparte na obietnicy parametry „token” i „grantedScopes” będą znajdować się w jednym obiekcie (w przeciwieństwie do wersji wywołania zwrotnego, w której są one przekazywane jako osobne argumenty do wywołania zwrotnego).
Chrome 104: nowy interfejs API ikon ulubionych dla platformy Manifest V3
Opublikowano:
Rozszerzenia platformy Manifest V3 mogą teraz uzyskiwać dostęp do ikon ulubionych stron za pomocą nowego wzorca adresu URL: chrome-extension://<id>/_favicon/, gdzie chrome://favicons API platformy Manifest V2. Więcej informacji znajdziesz w dokumentacji interfejsu Favicon API.
Aktualizacja dokumentacji: oświadczenie dewelopera o prowadzeniu lub nieprowadzeniu działalności gospodarczej
Opublikowano
Dodaliśmy identyfikację dewelopera jako przedsiębiorcy lub osoby niebędącej przedsiębiorcą, która informuje deweloperów o konieczności dokładnego określenia swojego statusu.
Chrome 103: Wasm na platformie Manifest V3 wymaga wasm-unsafe-eval
Opublikowano
Chrome nie przyznaje już domyślnie rozszerzeniom uprawnień script-src: wasm-unsafe-eval. Rozszerzenia, które korzystają z WebAssembly, muszą teraz wyraźnie dodać tę dyrektywę i wartość do extension_pages w deklaracjach content_security_policy.
Chrome 103: zmiany skrótów w MV3 wchodzą w życie natychmiast
Data publikacji:
Gdy zmienisz skrót klawiszowy rozszerzenia w wersji Manifest V3 na chrome://extensions/shortcuts, zmiany zostaną zastosowane natychmiast. Wcześniej rozszerzenie musiało zostać ponownie załadowane, zanim zmiana zaczęła obowiązywać.
Chrome 102: dynamiczne skrypty dotyczące treści w głównym świecie
Opublikowano
Skrypty treści rejestrowane dynamicznie mogą teraz określać kontekst, w którym będą wstrzykiwane komponenty. Więcej informacji znajdziesz w sekcji scripting.registerContentScripts().
Chrome 102: nowe pole pliku manifestu „optional_host_permissions”
Data opublikowania:
Rozszerzenia Manifest V3 mogą teraz określać klucz optional_host_permissions w pliku manifest.json. Dzięki temu rozszerzenia platformy Manifest V3 mogą deklarować opcjonalne wzorce dopasowania hostów, tak jak rozszerzenia platformy Manifest V2 mogły to robić za pomocą klucza optional_permissions.
Chrome 102: właściwość injectImmediately w funkcji scripting.executeScript()
Data opublikowania:
chrome.scripting.executeScript() akceptuje teraz opcjonalną właściwość injectImmediately w argumencie injection. Jeśli ten parametr jest obecny i ma wartość „true”, skrypt zostanie wstrzyknięty do miejsca docelowego tak szybko, jak to możliwe, zamiast czekać na document_idle. Pamiętaj, że nie gwarantuje to wstrzyknięcia skryptu przed wczytaniem strony, ponieważ strona wczytuje się dalej podczas wywoływania interfejsu API.
Chrome 102: obsługa interfejsu Omnibox API w Manifest V3
Opublikowano
Z interfejsu Omnibox API można teraz korzystać w rozszerzeniach opartych na procesie service worker. Wcześniej niektóre metody tego interfejsu API zgłaszały błędy podczas wywoływania z powodu wewnętrznych zależności od funkcji DOM.
Chrome 102: dozwolone wasm-unsafe-eval w CSP platformy Manifest V3
Opublikowano
Rozszerzenia Manifest V3 mogą teraz zawierać wasm-unsafe-eval w deklaracjach content_security_policy. Ta zmiana umożliwia rozszerzeniom platformy Manifest V3 korzystanie z WebAssembly.
Chrome 102: nowy interfejs storage.session API
Opublikowano
Rozszerzenia zgodne z platformą Manifest V3 mogą teraz korzystać z pamięci storage.session .
Aktualizacja dokumentacji: odkrywanie elementów w Chrome Web Store
Data publikacji:
Odkrywanie w Chrome Web Store to omówienie tego, jak użytkownicy znajdują produkty w Chrome Web Store i jak nasi redaktorzy wybierają produkty do wyróżnienia.
Chrome 101: ulepszone warunki domen declarativeNetRequest
Opublikowano
Warunki reguł declarativeNetRequest zostały zaktualizowane, aby umożliwić rozszerzeniom lepsze kierowanie żądań na podstawie domen „request” i „initiator”. Odpowiednie właściwości warunku to initiatorDomains, excludedInitiatorDomains, requestDomains i excludedRequestDomains. Zobacz też ten wątek dotyczący rozszerzeń do Chromium.
Chrome 100: rozwiązano problem z funkcją scripting.executeScript() na nowo utworzonych kartach
Rozwiązaliśmy długotrwały problem, który powodował, że wywołanie funkcji scripting.executeScript() na nowo utworzonej karcie lub w oknie mogło się nie powieść.
Chrome 100: port wiadomości natywnych utrzymuje działanie service workera
Opublikowano
Połączenie z hostem wiadomości natywnych za pomocą chrome.runtime.connectNative() w procesie roboczym usługi rozszerzenia powinno utrzymywać proces roboczy usługi przy życiu, dopóki port jest otwarty.
Chrome 100: omnibox.setDefaultSuggestion() obsługuje obietnice i wywołania zwrotne
Opublikowano
Metoda
omnibox.setDefaultSuggestion()
zwraca teraz obietnicę lub akceptuje wywołanie zwrotne, aby umożliwić programistom określenie, kiedy sugestia została prawidłowo ustawiona.
Chrome 100: obsługa i18n.getMessage() w procesach roboczych rozszerzeń
Data publikacji:
Interfejs chrome.i18n.getMessage() API jest teraz obsługiwany w kontekstach skryptu service worker rozszerzenia.
Chrome 99: match_origin_as_fallback w Canary
Opublikowano:
Skrypty treści mogą teraz określać klucz match_origin_as_fallback do wstrzykiwania w ramki powiązane z pasującą ramką, w tym ramki z adresami URL about:, data:, blob: i filesystem:. Więcej informacji znajdziesz w dokumentacji skryptów treści.
Chrome 99: obsługa skryptu service worker rozszerzenia w przypadku schematów file: w Chrome Canary
Opublikowano
Rozszerzenia oparte na platformie Manifest V2 i V3, które korzystają z procesu service worker, mogą teraz używać interfejsu Fetch API do wysyłania żądań do adresów URL ze schematem file:. Dostęp do adresów URL ze schematem file: nadal wymaga włączenia przez użytkownika opcji „Zezwalaj na dostęp do adresów URL plików” w przypadku rozszerzenia na stronie chrome://extensions.
Chrome 99: obsługa obietnic w przypadku interfejsów API do obsługi wiadomości w wersji Canary
Data opublikowania:
Dodano obsługę obietnic w przypadku funkcji tabs.sendMessage, runtime.sendMessage i runtime.sendNativeMessage w rozszerzeniach utworzonych na platformie Manifest V3.
Aktualizacja dokumentów: dokumentacja dotycząca weryfikacji w Chrome Web Store
Data publikacji:
Dodaliśmy nową stronę z informacjami, która zawiera omówienie procesu weryfikacji w Chrome Web Store i wyjaśnia, jak egzekwowane są zasady programu dla deweloperów.
Chrome 98: funkcje scripting.executeScript() i scripting.insertCSS() akceptują wiele plików
Opublikowano
Metody executeScript() i insertCSS() interfejsu Scripting API akceptują teraz wiele plików. Wcześniej te metody wymagały tablicy z jednym wpisem pliku.
Aktualizacja dokumentów: zmiany w rozwiązywaniu problemów z naruszeniami
Opublikowano
Strona Rozwiązywanie problemów związanych z naruszeniem zasad Chrome Web Store została zaktualizowana, aby zapewnić deweloperom bardziej szczegółowe wskazówki dotyczące typowych przyczyn odrzucenia.
Chrome 96: rozszerzenie obsługi obietnic o 27 kolejnych interfejsów API
Opublikowano:
Ta wersja zawiera znacznie więcej aktualizacji obietnic niż jakakolwiek poprzednia. Aktualizacje obejmują zarówno ogólne interfejsy API rozszerzeń, jak i interfejsy API rozszerzeń specyficzne dla ChromeOS. Szczegółowe informacje znajdziesz w sekcjach poniżej.
Interfejsy API rozszerzeń
Wiele interfejsów API obsługuje teraz obietnice w platformie Manifest V3.
chrome.browsingDatachrome.commandschrome.contentSettingschrome.debuggerchrome.downloadschrome.enterprise.hardwarePlatformchrome.fontSettingschrome.historychrome.instanceIDchrome.permissionschrome.processeschrome.searchchrome.sessionschrome.topSites
Interfejsy API, które używają prototypu ChromeSetting, obsługują teraz też obietnice. Ta zmiana dotyczy tych interfejsów API:
Interfejsy API ChromeOS
chrome.certificateProviderchrome.documentScanchrome.enterprise.deviceAttributeschrome.enterprise.networkingAttributeschrome.fileBrowserHandlerchrome.fileSystemProviderchrome.loginStatechrome.printingMetricschrome.wallpaper
Chrome 96: skrypty treści dynamicznych
Opublikowano
Interfejs chrome.scripting API obsługuje teraz w czasie działania rejestrowanie, aktualizowanie, wyrejestrowywanie i pobieranie listy skryptów treści. Wcześniej skrypty treści można było deklarować statycznie tylko w pliku manifest.json rozszerzenia lub wstrzykiwać programowo w czasie działania za pomocą funkcji chrome.scripting.executeScript().
Aktualizacja dokumentów: harmonogram wsparcia Manifest V2
Opublikowano
Harmonogram przejścia z Manifestu V2 na Manifest V3 został ogłoszony w tym poście na blogu. Opublikowaliśmy też bardziej szczegółową stronę z harmonogramem.
Chrome 96: uprawnienie declarativeNetRequestWithHostAccess
Opublikowano:
Nowe uprawnienie declarativeNetRequestWithHostAccess umożliwia rozszerzeniom korzystanie z interfejsu chrome.declarativeNetRequest API w witrynach, do których rozszerzenie ma uprawnienia hosta. Umożliwia to też migrację istniejących rozszerzeń platformy Manifest V2, które korzystają z uprawnień webRequest, webRequestBlocking i uprawnień hosta dla konkretnej witryny, do interfejsu chrome.declarativeNetRequest API bez konieczności uzyskiwania przez użytkownika nowych uprawnień.
Chrome 95: wstrzykiwanie skryptów bezpośrednio na strony
Opublikowano:
Metoda chrome.scripting interfejsu API executeScript() może teraz wstrzykiwać skrypty bezpośrednio do głównego środowiska strony. Wcześniej rozszerzenia mogły wstrzykiwać kod bezpośrednio do odizolowanego świata rozszerzenia. Więcej informacji o izolowanych światach znajdziesz w dokumentacji dotyczącej skryptów treści.
Chrome 95: obsługa obietnic w interfejsie Storage API
Data publikacji:
Metody w wersji interfejsu API chrome.storage opartej na Manifest V3 zwracają teraz obietnice.
Aktualizacja zasad: wymuszanie weryfikacji dwuetapowej
Opublikowano
Post na blogu dotyczący aktualizacji zasad opublikowany 29 czerwca 2021 r. został zaktualizowany, aby poprawić harmonogram wdrażania weryfikacji dwuetapowej.
Chrome 94: zmiany w statycznym zestawie reguł declarativeNetRequest
Opublikowano
chrome.declarativeNetRequest obsługuje teraz określanie maksymalnie 50 statycznych zestawów reguł (MAX_NUMBER_OF_STATIC_RULESETS) i włączanie maksymalnie 10 zestawów reguł (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS) jednocześnie.
Chrome 93: obsługa izolowania zasobów z innych domen
Opublikowano
Zarówno rozszerzenia Manifest V2, jak i Manifest V3 mogą teraz włączyć izolację między źródłami. Ta funkcja ogranicza liczbę zasobów z innych domen, które mogą wczytywać strony rozszerzenia, i umożliwia korzystanie z funkcji platformy internetowej niskiego poziomu, takich jak SharedArrayBuffer. Od Chrome 95 wymagana będzie zgoda użytkownika.
Aktualizacja zasad: zaktualizowane zasady programu dla deweloperów
Data publikacji:
Zaktualizowaliśmy zasady programu dla deweloperów Chrome Web Store, doprecyzowując zasady dotyczące wprowadzających w błąd taktyk instalacji, spamu i powielania treści. Ta aktualizacja obejmuje też nowy wymóg weryfikacji dwuetapowej, który jest niezbędny do publikowania w Chrome Web Store. Więcej informacji znajdziesz w poście na blogu.
Post na blogu: działania rozszerzeń na platformie Manifest V3
Opublikowano
Rozszerzenia Chrome od lat miały interfejsy API chrome.browserAction i chrome.pageActions, ale Manifest V3 zastąpił je ogólnym interfejsem API chrome.actions. W tym artykule opisujemy historię tych interfejsów API i zmiany, które zaszły w Manifest V3. Przeczytaj post
Post na blogu: przedstawiamy chrome.scripting
Opublikowano:
Interfejs chrome.scripting API to nowy interfejs Manifestu V3, który koncentruje się na skryptach. W tym poście przyjrzymy się bliżej motywacjom tej zmiany i jej nowym możliwościom. Przeczytaj post
Chrome 92: obsługa modułów service worker
Data publikacji:
Chrome obsługuje teraz moduły JavaScript w usługach Service Worker. Aby określić moduł w pliku manifestu:
"background": {
"service_worker": "script.js",
"type": "module"
}
Spowoduje to wczytanie skryptu instancji roboczej jako modułu ES, co umożliwi użycie słowa kluczowego import w skrypcie instancji roboczej do importowania innych modułów.
Chrome 91: chrome.action.getUserSettings()
Data publikacji:
Nowa metoda
chrome.action.getUserSettings()
umożliwia rozszerzeniom sprawdzenie, czy użytkownik przypiął rozszerzenie do głównego paska narzędzi.
Chrome 90: chrome.scripting.removeCSS()
Opublikowano
Nowa metoda chrome.scripting.removeCSS() umożliwia rozszerzeniom usuwanie kodu CSS, który został wcześniej wstawiony za pomocą metody chrome.scripting.insertCSS(). Zastępuje chrome.tabs.removeCSS().
Chrome 90: zwracanie obietnic z funkcji scripting.executeScript()
Opublikowano
chrome.scripting.executeScript() obsługuje teraz zwracanie obietnic. Jeśli wynik wykonania skryptu jest obietnicą, Chrome
zaczeka na jej rozstrzygnięcie i zwróci wynikową wartość.
Chrome 90: wyniki chrome.scripting.executeScript() zawierają frameId
Opublikowano
Wyniki zwracane z chrome.scripting.executeScript()
zawierają teraz frameId.
Właściwość frameId wskazuje ramkę, z której pochodzi wynik, co ułatwia rozszerzeniom przypisywanie wyników do poszczególnych ramek podczas wstrzykiwania ich do wielu ramek.
Chrome 89: nowy interfejs API do zarządzania grupami kart
Opublikowano
Nowy interfejs chrome.tabGroups API i nowe możliwości w chrome.tabs umożliwiają rozszerzeniom odczytywanie grup kart i manipulowanie nimi.
Wymaga platformy Manifest V3.
Chrome 89: konfigurowalne uprawnienia do zasobów dostępnych w internecie
Opublikowano
Definicje zasobów dostępnych w internecie w platformie Manifest V3 zostały zmienione, aby umożliwić rozszerzeniom ograniczanie dostępu do zasobów na podstawie pochodzenia żądającego lub identyfikatora rozszerzenia.
Post na blogu: Konwerter plików manifestu rozszerzenia
Data publikacji:
Zespół Chrome Extensions udostępnił narzędzie „Extension Manifest Converter” w formie open source. Jest to narzędzie w języku Python, które automatyzuje niektóre mechaniczne aspekty konwertowania rozszerzeń na Manifest V3. Zapoznaj się z postem na blogu z ogłoszeniem i pobierz go z GitHuba.
Chrome 88: ogólna dostępność platformy Manifest V3
Data opublikowania:
Manifest V3 to ważna aktualizacja platformy rozszerzeń. Podsumowanie nowych i zmienionych funkcji znajdziesz w tym artykule. Rozszerzenia mogą na razie nadal używać Manifestu V2, ale w najbliższej przyszłości zostanie on wycofany. Zdecydowanie zalecamy używanie Manifestu V3 w przypadku wszystkich nowych rozszerzeń i jak najszybsze rozpoczęcie migracji dotychczasowych rozszerzeń do Manifestu V3.