Większość rozszerzeń wymaga dostępu do co najmniej jednego interfejsu API rozszerzeń Chrome. Ten przewodnik po interfejsach API zawiera opis interfejsów API dostępnych do użycia w rozszerzeniach oraz przykłady zastosowań.
- accessibilityFeatures
-
Aby zarządzać funkcjami ułatwień dostępu w Chrome, użyj interfejsu API
chrome.accessibilityFeatures
. Ten interfejs API korzysta z prototypu ChromeSetting typu API do pobierania i ustawiania poszczególnych funkcji ułatwień dostępu. Aby uzyskać stany funkcji, rozszerzenie musi poprosić o uprawnieniaaccessibilityFeatures.read
. Aby zmodyfikować stan funkcji, rozszerzenie musi mieć uprawnieniaaccessibilityFeatures.modify
. Pamiętaj, że uprawnienieaccessibilityFeatures.modify
nie oznacza uprawnieniaaccessibilityFeatures.read
. - alarms
-
Użyj interfejsu API
chrome.alarms
, aby zaplanować wykonywanie kodu okresowo lub w określonym czasie w przyszłości. - audio
-
Chrome 59 i nowsze wersje Tylko w systemie ChromeOS
Interfejs API
chrome.audio
umożliwia użytkownikom uzyskiwanie informacji o podłączonych do systemu urządzeniach audio oraz ich kontrolowanie. Ten interfejs API jest obecnie dostępny tylko w trybie kiosku w systemie ChromeOS. - zakładki,
-
Użyj interfejsu API
chrome.bookmarks
do tworzenia, porządkowania i modyfikowania zakładek. Zobacz też artykuł Override Pages API, który umożliwia tworzenie niestandardowej strony Menedżera zakładek. - browserAction
-
≤ MV2
Za pomocą działań w przeglądarce możesz umieszczać ikony na głównym pasku narzędzi Google Chrome z prawej strony paska adresu. Oprócz ikony działanie w przeglądarce może mieć wyskakujące okienko, plakietkę i okienko.
- browsingData
-
Użyj interfejsu
chrome.browsingData
API, aby usunąć dane przeglądania z lokalnego profilu użytkownika. - certificateProvider
-
Chrome 46 i nowsze wersje Tylko w systemie ChromeOS
Używaj tego interfejsu API, aby udostępniać certyfikaty platformie, która może używać tych certyfikatów do uwierzytelniania TLS.
- polecenia
-
Za pomocą interfejsu komend API możesz dodawać skróty klawiszowe, które wywołują działania w rozszerzeniu, np. otwierają działanie przeglądarki lub wysyłają do rozszerzenia polecenie.
- contentSettings
-
Użyj interfejsu API
chrome.contentSettings
, aby zmienić ustawienia, które kontrolują, czy witryny mogą korzystać z takich funkcji, jak pliki cookie, JavaScript i wtyczki. Ogólnie rzecz biorąc, ustawienia treści umożliwiają dostosowanie działania Chrome w poszczególnych witrynach, a nie globalnie. - contextMenus
-
Użyj interfejsu API
chrome.contextMenus
, aby dodać elementy do menu kontekstowego Google Chrome. Możesz wybrać, do jakich typów obiektów mają się odnosić elementy menu kontekstowego, np. obrazy, hiperlinki i strony. - ciasteczka
-
Użyj interfejsu API
chrome.cookies
, aby wysyłać zapytania o pliki cookie i je modyfikować oraz otrzymywać powiadomienia o ich zmianach. - debuger
-
Interfejs
chrome.debugger
API służy jako alternatywny transport dla protokołu zdalnego debugowania w Chrome. Użyjchrome.debugger
, aby dołączyć jedną lub więcej kart do interakcji z siecią instrumentu, debugować JavaScript, modyfikować DOM i CSS oraz wykonywać inne czynności. Użyj właściwościtabId
Debuggee
, aby kierować reklamy na karty z użyciem parametrusendCommand
, i kieruj zdarzenia za pomocą parametrutabId
z funkcji zwrotnych wywołaniaonEvent
. - declarativeContent
-
Używaj interfejsu API
chrome.declarativeContent
, aby podejmować działania zależne od treści strony, bez konieczności uzyskiwania uprawnień do odczytu treści strony. - declarativeNetRequest
-
Chrome 84 lub nowszy
Interfejs API
chrome.declarativeNetRequest
służy do blokowania lub modyfikowania żądań sieciowych przez określenie reguł deklaratywnych. Dzięki temu rozszerzenia mogą modyfikować żądania sieci bez ich przechwytywania i przeglądania zawartości, co zapewnia większą prywatność. - declarativeWebRequest
-
Kanały w wersji beta ≤ MV2
Uwaga: ten interfejs API został wycofany. Zamiast tego użyj interfejsu API
declarativeNetRequest
. Użyj interfejsu APIchrome.declarativeWebRequest
, aby przechwytywać, blokować i modyfikować żądania w trakcie przesyłania. Jest on znacznie szybszy niż interfejs APIchrome.webRequest
, ponieważ możesz rejestrować reguły, które są oceniane w przeglądarce, a nie w silniku JavaScript, co zmniejsza opóźnienia i zwiększa wydajność. - desktopCapture
-
Interfejs API Desktop Capture umożliwia przechwytywanie zawartości ekranu, poszczególnych okien lub kart.
- devtools.inspectedWindow
-
Aby wchodzić w interakcję z przeglądanym oknem, użyj interfejsu API
chrome.devtools.inspectedWindow
: uzyskaj identyfikator karty przeglądanej strony, oceń kod w kontekście przeglądanego okna, ponownie załaduj stronę lub uzyskaj listę zasobów na stronie. - devtools.network
-
Aby pobrać informacje o żądaniach sieci wyświetlanych przez Narzędzia dla programistów w panelu Sieć, użyj interfejsu API
chrome.devtools.network
. - devtools.panels
-
Aby zintegrować rozszerzenie z interfejsem okna narzędzi dla programistów, użyj interfejsu API
chrome.devtools.panels
: twórz własne panele, uzyskaj dostęp do istniejących paneli i dodaj paski boczne. - devtools.performance
-
Chrome 129 lub nowszy
Aby słuchać aktualizacji stanu nagrywania w panelu Wydajność w Narzędziach deweloperskich, użyj interfejsu API
chrome.devtools.performance
. - devtools.recorder
-
Chrome w wersji 105 lub nowszej
Użyj interfejsu API
chrome.devtools.recorder
, aby dostosować panel Dyktafon w Narzędziach deweloperskich. - dns
-
Kanał dla programistów
Do rozwiązywania adresów DNS użyj interfejsu API
chrome.dns
. - documentScan
-
Chrome 44 i nowsze Tylko w ChromeOS
Aby wykrywać i pobierać obrazy ze skanerów dokumentów, użyj interfejsu
chrome.documentScan
API. - dom
-
Chrome 88 lub nowszy
Korzystanie z interfejsu
chrome.dom
API do uzyskiwania dostępu do specjalnych interfejsów DOM API dla rozszerzeń - downloads
-
Użyj interfejsu
chrome.downloads
API, aby automatycznie inicjować, monitorować, modyfikować i wyszukiwać pobierania. - enterprise.deviceAttributes
-
Aby odczytać atrybuty urządzenia, użyj interfejsu API
chrome.enterprise.deviceAttributes
. Uwaga: ten interfejs API jest dostępny tylko dla rozszerzeń, których instalacja została wymuszona na podstawie zasad przedsiębiorstwa. - enterprise.hardwarePlatform
-
Chrome 71 lub nowszy Wymaga ustawienia zasad
Aby poznać producenta i model platformy sprzętowej, na której działa przeglądarka, użyj interfejsu API
chrome.enterprise.hardwarePlatform
. Uwaga: ten interfejs API jest dostępny tylko dla rozszerzeń zainstalowanych na podstawie zasad przedsiębiorstwa. - enterprise.login
-
Aby zakończyć zarządzane sesje gościa, użyj interfejsu API
chrome.enterprise.login
. Uwaga: ten interfejs API jest dostępny tylko dla rozszerzeń zainstalowanych na podstawie zasad firmy w ramach zarządzanych sesji gościa w ChromeOS. - enterprise.networkingAttributes
-
Aby odczytać informacje o bieżącej sieci, użyj interfejsu API
chrome.enterprise.networkingAttributes
. Uwaga: ten interfejs API jest dostępny tylko dla rozszerzeń, których instalacja została wymuszona na podstawie zasad przedsiębiorstwa. - enterprise.platformKeys
-
Tylko w ChromeOS Wymaga ustawienia zasad
Użyj interfejsu API
chrome.enterprise.platformKeys
, aby wygenerować klucze i zainstalować certyfikaty dla tych kluczy. Certyfikatami będzie zarządzać platforma. Można ich używać do uwierzytelniania TLS, dostępu do sieci lub przez inne rozszerzenie za pomocą interfejsu chrome.platformKeys. - zdarzenia
-
Przestrzeń nazw
chrome.events
zawiera typowe typy używane przez interfejsy API do wysyłania zdarzeń, które informują o wystąpieniu czegoś interesującego. - extension
-
Interfejs API
chrome.extension
zawiera narzędzia, których można używać na dowolnej stronie rozszerzenia. Obejmuje to obsługę wymiany wiadomości między rozszerzeniem a jego skryptami treści lub między rozszerzeniami, jak opisano szczegółowo w sekcji Przesyłanie wiadomości. - extensionTypes
-
Interfejs API
chrome.extensionTypes
zawiera deklaracje typów dla rozszerzeń Chrome. - fileBrowserHandler
-
Tylko w ChromeOS Tylko w tle
Użyj interfejsu API
chrome.fileBrowserHandler
, aby rozszerzyć przeglądarkę plików w ChromeOS. Możesz na przykład użyć tego interfejsu API, aby umożliwić użytkownikom przesyłanie plików na Twoją stronę. - fileSystemProvider
-
Tylko w systemie ChromeOS
Użyj interfejsu API
chrome.fileSystemProvider
, aby utworzyć systemy plików, które będą dostępne w menedżerze plików w systemie operacyjnym Chrome. - fontSettings
-
Aby zarządzać ustawieniami czcionek w Chrome, użyj interfejsu API
chrome.fontSettings
. - gcm
-
Użyj opcji
chrome.gcm
, aby umożliwić aplikacjom i rozszerzeniom wysyłanie i odbieranie wiadomości za pomocą Komunikacji w chmurze Firebase (FCM). - historia
-
Użyj interfejsu API
chrome.history
, aby uzyskać dostęp do rekordu odwiedzonych stron w przeglądarce. Możesz dodawać, usuwać i wyszukiwać adresy URL w historii przeglądarki. Aby zastąpić stronę z historią własną wersją, zapoznaj się z artykułem Zastępowanie stron. - i18n
-
Aby wdrożyć międzynarodowość w całej aplikacji lub rozszerzeniu, użyj infrastruktury
chrome.i18n
. - identity
-
Aby uzyskać tokeny dostępu OAuth2, użyj interfejsu API
chrome.identity
. - idle
-
Użyj interfejsu API
chrome.idle
, aby wykryć, kiedy stan bezczynności urządzenia ulega zmianie. - input.ime
-
Tylko w systemie ChromeOS
Aby wdrożyć niestandardowy IME w ChromeOS, użyj interfejsu
chrome.input.ime
API. Dzięki temu rozszerzenie może obsługiwać naciśnięcia klawiszy, ustawiać kompozycję i zarządzać oknem kandydata. - instanceID
-
Chrome 44 lub nowszy
Aby uzyskać dostęp do usługi Identyfikator instancji, użyj adresu
chrome.instanceID
. - loginState
-
Chrome 78 i nowsze wersje Tylko w systemie ChromeOS
Aby odczytywać i monitorować stan logowania, użyj interfejsu API
chrome.loginState
. - filmami
-
Interfejs API
chrome.management
umożliwia zarządzanie zainstalowanymi aplikacjami i rozszerzeniami. - powiadomienia
-
Za pomocą interfejsu
chrome.notifications
API możesz tworzyć powiadomienia za pomocą szablonów i wyświetlać je użytkownikom na pasku systemowym. - omnibox
-
Interfejs API omniboksa umożliwia zarejestrowanie słowa kluczowego w pasku adresu w Google Chrome, który jest też nazywany omniboksem.
- pageAction
-
≤ MV2
Użyj interfejsu API
chrome.pageAction
, aby umieścić ikony na głównym pasku narzędzi Google Chrome, po prawej stronie paska adresu. Działania dotyczące strony to działania, które można wykonać na bieżącej stronie, ale które nie są dostępne na wszystkich stronach. Gdy są nieaktywne, działania na stronie są wyszarzone. - pageCapture
-
Aby zapisać kartę jako MHTML, użyj interfejsu API
chrome.pageCapture
. - uprawnienia
-
Użyj interfejsu
chrome.permissions
API, aby poprosić o deklarowane opcjonalne uprawnienia w czasie działania aplikacji, a nie w czasie instalacji. Dzięki temu użytkownicy będą rozumieć, do czego są potrzebne te uprawnienia, i przyznawać tylko te, które są niezbędne. - platformKeys
-
Chrome 45 i nowsze Tylko w systemie ChromeOS
Aby uzyskać dostęp do certyfikatów klienta zarządzanych przez platformę, użyj interfejsu API
chrome.platformKeys
. Jeśli użytkownik lub zasady przyznają uprawnienia, rozszerzenie może używać takiego certyfikatu w ramach niestandardowego protokołu uwierzytelniania. Umożliwia to np. korzystanie z certyfikatów zarządzanych przez platformę w przypadku usług VPN innych firm (patrz chrome.vpnProvider). - power
-
Aby zastąpić funkcje zarządzania energią systemu, użyj interfejsu
chrome.power
API. - printerProvider
-
Chrome 44 lub nowszy
Interfejs API
chrome.printerProvider
udostępnia zdarzenia używane przez menedżera drukowania do wysyłania zapytań do drukarek kontrolowanych przez rozszerzenia, sprawdzania ich możliwości i przesyłania do nich zadań drukowania. - drukowanie
-
Chrome 81 i nowsze wersje Tylko w ChromeOS
Użyj interfejsu API
chrome.printing
, aby wysyłać zadania drukowania do drukarek zainstalowanych na Chromebooku. - printingMetrics
-
Aby pobrać dane o używaniu drukowania, użyj interfejsu API
chrome.printingMetrics
. - prywatność
-
Za pomocą interfejsu API
chrome.privacy
możesz kontrolować korzystanie z funkcji w Chrome, które mogą wpływać na prywatność użytkownika. Ten interfejs API korzysta z prototypu ChromeSetting typu API do pobierania i ustawiania konfiguracji Chrome. - procesy
-
Kanał dla programistów
Użyj interfejsu API
chrome.processes
, aby wchodzić w interakcje z procesami przeglądarki. - proxy
-
Aby zarządzać ustawieniami serwera proxy w Chrome, użyj interfejsu API
chrome.proxy
. Ten interfejs API korzysta z prototypu ChromeSetting typu API do pobierania i ustawiania konfiguracji serwera proxy. - runtime
-
Użyj interfejsu API
chrome.runtime
, aby pobrać usługę w tle, zwrócić szczegóły manifestu i odbierać zdarzenia w cyklu życia rozszerzenia oraz na nie odpowiadać. Za pomocą tego interfejsu API możesz też konwertować względną ścieżkę adresów URL na pełne adresy URL. - search
-
Chrome 87 lub nowszy
Użyj interfejsu API
chrome.search
, aby wyszukiwać za pomocą domyślnego dostawcy. - sesji,
-
Użyj interfejsu
chrome.sessions
API, aby wysłać zapytanie o zakładki i okna z sesji przeglądania oraz je przywrócić. - storage
-
Użyj interfejsu API
chrome.storage
, aby przechowywać, pobierać i śledzić zmiany w danych użytkownika. - system.cpu
-
Aby wysyłać zapytania o metadane procesora, użyj interfejsu API
system.cpu
. - system.display
-
Aby wysłać zapytanie o metadane wyświetlania, użyj interfejsu API
system.display
. - system.memory
-
Interfejs API
chrome.system.memory
. - system.storage
-
Użyj interfejsu API
chrome.system.storage
, aby zapytać o informacje dotyczące urządzenia pamięci masowej i otrzymać powiadomienie, gdy urządzenie pamięci wymiennej zostanie podłączone lub odłączone. - systemLog
-
Użyj interfejsu
chrome.systemLog
API, aby rejestrować logi systemowe Chrome z rozszerzeń. - tabCapture
-
Korzystanie z interfejsu API
chrome.tabCapture
do interakcji z strumieniami multimediów w kartach. - karty
-
Użyj interfejsu API
chrome.tabs
, aby wchodzić w interakcje z systemem kart przeglądarki. Za pomocą tego interfejsu API możesz tworzyć, modyfikować i przestawiać karty w przeglądarce. - topSites
-
Użyj interfejsu API
chrome.topSites
, aby uzyskać dostęp do najpopularniejszych (czyli najczęściej odwiedzanych) witryn wyświetlanych na stronie nowej karty. Nie obejmują one skrótów dostosowanych przez użytkownika. - tts
-
Aby odtwarzać syntezowany tekst (TTS), użyj interfejsu API
chrome.tts
. Zapoznaj się też z powiązanym interfejsem APIttsEngine
, który umożliwia rozszerzeniu implementację mechanizmu przetwarzania mowy. - ttsEngine
-
Aby zaimplementować mechanizm zamiany tekstu na mowę(TTS) za pomocą rozszerzenia, użyj interfejsu API
chrome.ttsEngine
. Jeśli rozszerzenie zarejestruje się za pomocą tego interfejsu API, będzie otrzymywać zdarzenia zawierające wypowiedź do wymówienia i inne parametry, gdy dowolne rozszerzenie lub aplikacja w Chrome będzie używać interfejsu APItts
do generowania mowy. Rozszerzenie może następnie użyć dowolnej dostępnej technologii internetowej do syntezy i wyświetlenia mowy oraz wysłać zdarzenia z powrotem do funkcji wywołania, aby przekazać stan. - types
-
Interfejs
chrome.types
API zawiera deklaracje typów w Chrome. - vpnProvider
-
Chrome 43 i nowsze Tylko w systemie ChromeOS
Aby zaimplementować klienta VPN, użyj interfejsu API
chrome.vpnProvider
. - tapeta
-
Chrome 43 i nowsze Tylko w systemie ChromeOS
Aby zmienić tapetę w ChromeOS, użyj interfejsu API
chrome.wallpaper
. - webNavigation
-
Aby otrzymywać powiadomienia o stanie żądań nawigacji w trakcie ich przetwarzania, użyj interfejsu API
chrome.webNavigation
. - webRequest
-
Użyj interfejsu API
chrome.webRequest
, aby obserwować i analizować ruch oraz przechwytywać, blokować i modyfikować żądania w trakcie przesyłania. - okna
-
Korzystaj z interfejsu
chrome.windows
API, aby wchodzić w interakcje z oknami przeglądarki. Za pomocą tego interfejsu API możesz tworzyć, modyfikować i przestawiać okna w przeglądarce.