Bu soru çok eski, ancak uzantılarını krom mağazasına eklemeyen bir uzantı geliştiricisi olarak bu pop-up iletisini devre dışı bırakmaya çalışmanın yollarını aradığınızda Google'da hala en iyi sonuç, nedeniyle grup politikalarına erişimi yok ve Chrome dev derlemesini kullanmıyor. Şu anda bu durumda resmi bir çözüm yok, bu yüzden burada biraz 'çirkin' bir tane yayınlayacağım.
Bu yöntem hemen yeni bir pencere oluşturmamızı ve eskisini kapatmamızı sağlıyor. Açılır pencere orijinal pencereyle ilişkilidir, bu nedenle normal kullanım durumlarında bu pencere kapatıldığından açılır pencere asla görünmez.
Buradaki en basit çözüm, yeni bir pencere oluşturuyoruz ve geri aramada yeni oluşturduğumuz pencere olmayan tüm pencereleri kapatıyoruz:
chrome.windows.create({
type: 'normal',
focused: true,
state: 'maximized'
}, function(window) {
chrome.windows.getAll(function(windows) {
for (var i = 0; i < windows.length; i++) {
if (windows[i].id != window.id) {
chrome.windows.remove(windows[i].id);
}
}
});
});
Ayrıca, bu uzantının nasıl yüklendiğini tespit edebilir ve bu kodu yalnızca bir geliştirme yüklemesi ise çalıştırabiliriz (muhtemelen en iyisi yayın kodundan tamamen kaldırmak için). İlk olarak, chrome.management.getSelf çağrısı için, uzantının yükleme türünü kontrol etmemizi sağlayan, temel olarak bir if ifadesinde yukarıdaki kodu saran bir geri arama işlevi oluşturuyoruz:
function suppress_dev_warning(info) {
if (info.installType == "development") {
chrome.windows.create({
type: 'normal',
focused: true,
state: 'maximized'
}, function(window) {
chrome.windows.getAll(function(windows) {
for (var i = 0; i < windows.length; i++) {
if (windows[i].id != window.id) {
chrome.windows.remove(windows[i].id);
}
}
});
});
}
}
daha sonra yaptığımız geri arama ile chrome.management.getSelf diyoruz:
chrome.management.getSelf(suppress_dev_warning);
Bu yöntemin bazı uyarıları vardır, yani kalıcı bir arka plan sayfası olduğunu varsayıyoruz, bu da kodun ilk açıldığında yalnızca bir kez çalıştığı anlamına gelir. İkinci bir sorun, uzantıyı chrome: // uzantıları sayfasından yeniden yüklersek / yenilersek, şu anda açık olan tüm pencereleri kapatacak ve deneyimimde bazen uyarı yine de görüntülenecektir. Bu özel durum, herhangi bir sekmenin "chrome: // uzantılarına" açık olup olmadığını kontrol edip, çalıştırmıyorsa önlenebilir.