Açıklama
Hizmet çalışanı'nı almak, manifestle ilgili ayrıntıları döndürmek ve uzantı yaşam döngüsündeki etkinlikleri dinleyip yanıtlamak için chrome.runtime API'yi kullanın. Bu API'yi, URL'lerin göreceli yolunu tam nitelikli URL'lere dönüştürmek için de kullanabilirsiniz.
Genel Bakış
Runtime API, uzantılarınızın kullanabileceği çeşitli işlev alanlarını destekleyen yöntemler sunar:
- İleti iletme
- Uzantınız, aşağıdaki yöntemleri ve etkinlikleri kullanarak uzantınızdaki farklı bağlamlarla ve diğer uzantılarla iletişim kurabilir: connect(), onConnect, onConnectExternal, sendMessage(), onMessage ve onMessageExternal. Ayrıca uzantınız, connectNative() ve sendNativeMessage() kullanarak kullanıcının cihazındaki yerel uygulamalara mesaj iletebilir.
- Uzantı ve platform meta verilerine erişme
- Bu yöntemler, uzantı ve platform hakkında belirli meta verileri almanıza olanak tanır. Bu kategorideki yöntemler arasında getManifest() ve getPlatformInfo() yer alır.
- Uzantı yaşam döngüsünü ve seçeneklerini yönetme
- Bu özellikler, uzantıda bazı meta işlemleri gerçekleştirmenize ve seçenekler sayfasını görüntülemenize olanak tanır. Bu kategorideki yöntemler ve etkinlikler arasında onInstalled, onStartup, openOptionsPage(), reload(), requestUpdateCheck() ve setUninstallURL() yer alır.
- Yardımcı programlar
- Bu yöntemler, dahili kaynak temsillerinin harici biçimlere dönüştürülmesi gibi faydalar sağlar. Bu kategorideki yöntemler arasında getURL() yer alır.
- Kiosk modu yardımcı programları
- Bu yöntemler yalnızca ChromeOS'te kullanılabilir ve temel olarak kiosk uygulamalarını desteklemek için kullanılır. Bu kategorideki yöntemler arasında restart ve restartAfterDelay bulunur.
İzinler
Runtime API'deki çoğu yöntem,
sendNativeMessage ve connectNative dışında herhangi bir izin gerektirmez. Bu iki yöntem ise
nativeMessaging iznini gerektirir.
Manifest
Aşağıdaki örnekte, manifest dosyasında nativeMessaging izninin nasıl beyan edileceği gösterilmektedir:
manifest.json:
{
"name": "My extension",
...
"permissions": [
"nativeMessaging"
],
...
}
Kullanım alanları
Web sayfasına resim ekleme
Bir web sayfasının başka bir alanda barındırılan bir öğeye erişebilmesi için kaynağın tam URL'sini (ör. <img src="https://example.com/logo.png">) belirtmesi gerekir. Bir web sayfasına uzantı öğesi eklemek için de aynı durum geçerlidir. İki fark vardır: Uzantının öğeleri web'de erişilebilen kaynaklar olarak sunulmalıdır ve genellikle içerik komut dosyaları, uzantı öğelerini yerleştirmekten sorumludur.
Bu örnekte uzantı, tam nitelikli bir URL oluşturmak için runtime.getURL() kullanılarak content
script'in yerleştirildiği sayfaya logo.png ekler. Ancak öncelikle öğenin manifest'te web'de erişilebilir bir kaynak olarak tanımlanması gerekir.
manifest.json:
{
...
"web_accessible_resources": [
{
"resources": [ "logo.png" ],
"matches": [ "https://*/*" ]
}
],
...
}
content.js:
{ // Block used to avoid setting global variables
const img =