Chrome Uzantılarında neler oluyor?

Temmuz ayında, uzantılarla ilgili gelişmelerden haberdar olabilmeniz için yeni bir blog serisi yayınlamıştık. Değerli geri bildirimleriniz ve WebExtensions Topluluk Grubu'ndaki diğer tarayıcı tedarikçileriyle sürdürdüğümüz ortak çalışma sayesinde, uzantı API'lerini geliştirmeye ve tarayıcılar arasında daha fazla tutarlılık sağlamaya devam ediyoruz.

Ekim ayına hoş geldiniz. Bu yayında, Chrome uzantı ekibinin son birkaç ay içinde yaptığı değişikliklerin yanı sıra bu yılın ilerleyen dönemlerinde kullanıma sunulacak bazı yeni özellikleri inceleyeceğiz. Haydi, başlayalım.

Yeni uzantı API'leri ve özellikleri

Bu bölümde, önemli API lansmanlarını paylaşıyor, diğer API iyileştirmelerini kısaca inceliyor ve yakında kullanıma sunulacak sürümleri duyuruyoruz. Tüm lansmanlar şu anda en son Beta sürümünde kullanılabilir. Ayrıntılar için Chromium yayın planına bakın.

Öne çıkanlar

Çözülen bilinen sorunlar

Uzatma ekibi, Manifest V3 kararlılık sorunlarını çözmek için aktif bir şekilde çalışıyor. Chrome 116'da birçok iyileştirme kullanıma sunuldu. Bu iyileştirmeler, Manifest v2 ile v3 arasındaki özellik farkını kapatma yolunda önemli ilerleme kaydetmemize yardımcı oldu. Chrome 120'de, öncelikli tüm platform eksikliklerini gidermeyi ve bilinen sorunlar sayfasında belgelenen tüm kritik hataları kapatmayı tamamlamış olacağız. ChromeOS Lacros için fileHandler desteği ve bu ayın ilerleyen günlerinde kullanıma sunulacak userScripts API dışındaki tüm özellikler şu anda Chrome 120 Canary'da kullanılabilir. Daha fazla bilgi için güncellenmiş bilinen sorunlar sayfasına göz atın.

Hizmet İşleyici kararlılığı iyileştirildi

Hizmet işçisiyle ilgili kararlılık sorunları çözüldü. Chrome 116'da, uzantı API'lerine kullanıcı istemi gösteren güçlü keep-alive'ler ekledik ve WebSocket desteğini iyileştirdik (Uzantılarda WebSocket kullanma başlıklı eğitime bakın). Chrome 118 ve sonraki sürümlerde, hizmet çalışanları etkin bir Hata Ayıklama Aracı API oturumu sırasında çalışmaya devam eder.

Daha fazla bilgi için güncellenmiş Hizmet Çalışanı kılavuzumuza göz atın. Kullanıcılarınız 119'dan sonraki Chrome sürümlerinde hizmet çalışanıyla ilgili kararlılık sorunları yaşamaya devam ederse lütfen bize bildirin.

Daha yüksek güvenlik

Daha önce tabs.update(), tabs.create ve windows.create() kullanılarak bazı chrome:// URL'lerine gidildiğinde hata oluşuyordu veya Chrome kilitleniyordu. Ayrıca tabs.update(), JavaScript URL'si açamadı. Chrome 117'de desteklenen chrome:// URL'lerinin sayısını artırdık ve JavaScript URL'si engelleme özelliği artık tüm uzantı API yöntemleri için de geçerli.

Chrome 117'de, yükledikleri bir uzantı artık Chrome Web Mağazası'nda mevcut değilse kullanıcılar Chrome Uzantıları sayfasında proaktif bildirimler alır. Bu durum, geliştirici uzantıyı yayından kaldırdığında, politika ihlalleri nedeniyle yayından kaldırıldığında veya kötü amaçlı yazılım olarak tanımlandığında ortaya çıkabilir. Ayrıntılı bilgi için Güvenlik Kontrolü'nü chrome://extensions sayfasına getirme başlıklı makaleyi inceleyin.

Chrome 118'de, uzantıların ayrıntılar sayfasında "Dosya URL'lerine erişime izin ver" seçeneği etkinleştirilmedikçe uzantıların chrome.tabs ve chrome.windows API'lerini kullanarak file:// URL'lerine gitmesine izin verilmez. WECG tartışmasına göz atın.

Daha fazla API lansmanı

  • Runtime API: Chrome 116'dan itibaren etkin bağlamlarla ilgili bilgileri almak için runtime.getContexts() kullanabilirsiniz. Örneğin, etkin bir ekran dışı doküman olup olmadığını kontrol edebilirsiniz.
  • Yan Panel API'si Chrome 116'da, bağlam menüsü tıklaması gibi bir kullanıcı hareketine yanıt olarak uzantı yan panelini programatik olarak açmak için sidepanel.open() öğesini kullanabilirsiniz.
  • TabCapture API Chrome 116'da, uzantı hizmet çalışanından getMediaStreamId() çağrısı yapma ve ekran dışındaki bir belgedeki akış kimliğinden MediaStream nesnesi alma özelliği eklendi. Örnekler için Ses kaydı ve ekran görüntüsü bölümüne bakın.
  • DeclarativeNetRequest API: isUrlFilterCaseSensitive mülkünün varsayılan değeri, Chrome 118'de false olarak değiştirildi.

Çok yakında...

Chrome 120'in yayınlanmasıyla birlikte bilinen sorunlar sayfasındaki kalan tüm öğeleri ele almayı planlıyoruz. Ayrıca aşağıdaki özellikleri de eklemeyi planlıyoruz:

  • UserScripts API, kullanıcı komut dosyası yöneticilerinin bir kullanıcı komut dosyası koleksiyonunun web sayfalarına nasıl ve ne zaman ekleneceğini koordine etmesine olanak tanır. Ayrıntılar için WECG teklifine bakın.
  • ReadingList API, geliştiricilerin yan panelin Okuma Listesi panelinde bulunan meta verileri oluşturmasına, okumasına, güncellemesine ve silmesine olanak tanır. Duyuru için Chrome uzantılarındaki yenilikler başlıklı videoyu izleyin.
  • Web uzantıları topluluk grubundan gelen geri bildirimler doğrultusunda, etkin statik kural kümeleriyle ilgili sınırı 10'dan 50'ye önemli ölçüde artırıyoruz. Ayrıca, izin verilen statik kural kümelerinin toplam sayısını 50'den 100'e çıkarıyoruz. Bu özellik şu anda Canary sürümünde kullanılabilir.
  • Dosya İşleme API'si: ChromeOS 120'den itibaren ChromeOS uzantılarında kullanılabilecek olan bu API, uzantıların web platformu dosya işleme işlemine benzer şekilde belirtilen MIME türlerine ve dosya uzantılarına sahip dosyaları açmasına olanak tanır.
  • Uzantılar, userVisibleOnly değerini false olarak ayarlayarak kullanıcılara görünür bir bildirim göstermeden self.registration.pushManager.subscribe() üzerinden web Push API'yi kullanabilir. Bu sayede push bildirimleri, istemci-sunucu arasında eşzamansız iletişim için hizmet işçilerindeki (MV3) WebSocket'lere daha sorunsuz bir alternatif haline gelecektir. Ayrıntılar için Chromium hatası ve WECG tartışmasına bakın.

Bu özellikler Chrome Beta'da kullanıma sunulduğunda duyurular için Uzantılarda yenilikler sayfasını takip edin.

Doküman yükseltmeleri

Ayrıca dokümanlarımızı iyileştirip yeni içerikler ekliyoruz. Lütfen chromium-group'da soru sormaya ve doküman sorunlarını bildirmeye devam edin.

Öne çıkanlar

Diğer güncellemeler

Çok yakında...

  • User Scripts API referansı ve eğitimi.
  • Firebase eğitimi ve örnekleri.
  • ReadingList API referansı.

Chrome Web Mağazası'nı yeniden tasarlıyoruz 🌈

Chrome Web Mağazası ana sayfasının ekran görüntüsü..
Yeni Chrome Web Mağazası ana sayfası

Bu ayın başlarında, Google I/O'da da belirttiğimiz gibi, yenilenen Chrome Web Mağazası'nın erken bir önizlemesini duyurmuştuk. https://chromewebstore.google.com/ adresinden bu uygulamayı inceleyebilirsiniz. Dikkat çeken bazı değişiklikler şunlardır:

  • On bir kategoriden oluşan liste, üç kategori grubunda on yedi kategorinin yer aldığı yeni bir listeyle değiştirildi.
  • Aramada otomatik tamamlama özelliği iyileştirildi.
  • Ekran görüntüleri artık çok daha yüksek kalitede gösteriliyor. Henüz yapmadıysanız 1280x800 ekran görüntüsü yükleyebilirsiniz.
  • Destek sekmesindeki soruların yanıtlarında artık yeni satırlar gösteriliyor.
  • Kullanıcı yorumlarını ve destek sorularını yanıtlarken artık yanıtınızın yanında adınızın yanında bir "Geliştirici" rozeti gösterilecek.
  • Mağaza öğesi URL'nizin sonuna "/yorumlar" ekleyerek kullanıcılara yorumlar sayfasının doğrudan bağlantısını sağlayabilirsiniz. Örneğin: https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews.

chromium-google grubu ile ilgili olarak şimdiye kadar verdiğiniz katkılar için teşekkür ederiz. Tartışmaya katılın veya Geri bildirim ver menü öğesini kullanarak geri bildiriminizi doğrudan CWS ekibine gönderin:

Chrome Web Mağazası sayfasında geri bildirim verme
Chrome Web Mağazası sayfasında geri bildirim verme

Ayrıca, içeriklerinizin Seçilenler koleksiyonunda yer alması için kendi kendinize adaylık formu gönderebilirsiniz. Geliştirici kontrol panelinde de yakında yapılacak iyileştirmeler için takipte kalın.

💡 Biliyor muydunuz?

  • Chrome uzantılarında hata ayıklamayla ilgili yeni bir video yayınladık. Bu makalede, aşina olabileceğiniz birçok konu ele alınsa da uzantılarda Geliştirici Araçları'nı kullanmayla ilgili birkaç ipucu da paylaşılmaktadır.
  • Artık her uzantı için bir gizlilik politikası sağlamanız gerekiyor. Önceden geliştirici hesabı başına yalnızca bir gizlilik politikası ekleyebilmenize rağmen, tek bir geliştirici hesabının altında birkaç uzantı varsa bu durum can sıkıcı olabiliyordu. Bu yeni arayüz, geliştirici kontrol panelindeki öğenizin Gizlilik Sekmesi'nde kullanılabilir. Bu nedenle, hesap düzeyinde gizlilik politikaları artık desteklenmiyor.
    Gizlilik politikası kutusunun ekran görüntüsü
    Gizlilik politikası kutusunun ekran görüntüsü

Size ulaşıyoruz 🙌

Bire bir görüşmeler, yeni programlar kullanıma sunma ve zirvelere katılma yoluyla uzantı geliştirici topluluğuyla iletişime geçmeye devam ettik. Öne çıkan bazı noktalar:

  • Google Geliştirici Uzmanları Programı, Ağustos ayında kullanıma sunuldu. Dünyanın dört bir yanından, Chrome uzantılarına odaklanan on ikiden fazla yeni GDE'miz bize mükemmel geri bildirimler sağlıyor. Program için çok heyecan verici bir dönem.
  • Web Uzantıları Topluluğu Grubu kapsamında TPAC'ye (W3C'nin yıllık konferansı) katıldık ve topluluğun çeşitli üyeleriyle birlikte Firefox ve Safari'den temsilcilerle görüştük. Daha tutarlı uzantı API'lerine geçiş, bir spesifikasyon üzerinde çalışma ve yeni bir test paketi oluşturmak için Web Platform Testleri'ni temel almak da dahil olmak üzere çeşitli konularda önemli ilerleme kaydettik. WECG deposunda toplantı tutanağının tamamını okuyabilirsiniz.
  • Uzatma ekibi, geçen hafta Amsterdam'da düzenlenen Reklam Filtreleme Geliştirici Zirvesi'ne katıldı. Zirve haftasından önce düzenledikleri kahve sohbetinde ve Cuma günkü açık ofis saatlerinde sizinle tanıştılar.
    Reklam filtrelemeyle ilgili geliştirici zirvesinde uzantı ekibi
    Reklam filtreleme geliştirme zirvesinde uzantı ekibi

Bu etkinliklerden hiçbirine katılamamış olsanız bile chromium-extensions Google grubunda soru sorarak, WECG'deki tarayıcı iş ortağı tartışmalarını takip ederek ve doküman sorunlarını bildirerek sürece dahil olmaya devam edebilirsiniz.

Uzantı geliştirici topluluğunun bir parçası olduğunuz için tekrar teşekkür ederiz.