2014-07-04 39 views
7

Facebook'un oturum açma işlemi için bir uzantı yazıyorum. Facebook sekmesi zamanlayıcıya çarpsa bile, bunu düzeltmeye çalışarak saymaya devam ettim. the doc'a göre böyle bir olay yok gibi görünüyor.Chrome sekmesi kilitleniyorsa nasıl algılanır

Sekmenin çöküp çökmediğini veya kilitlenme olayını algılamak için API var mı?

cevap

4

chrome.processes.onExited olay, bir işleyici çöktüğünde (bu bir veya daha fazla sekmeyi barındıran bir işlem) tetiklenir.

Bu API yalnızca developer channel'daki kullanıcılar tarafından kullanılabilir, dolayısıyla uzantıyı herkes için herkesin kullanımına sunmak istiyorsanız, alternatif bir yöntem kullanmanız gerekir. chrome.runtime.connect aracılığıyla bir ileti bağlantı noktası oluşturan bir içerik komut dosyası oluşturabilir veolayında chrome.tabs.sendMessage veya chrome.tabs.executeScript olayları sekmesinin hala canlı olup olmadığını kontrol edebilirsiniz: Sekme artık yoksa, chrome.runtime.lastError bir iletişim kuracak ve bir iletişim belirtecektir hata.

+1

Denemelerimde, sekme çökerse aramadan sonra chrome.runtime.lastError ayarlanmadı. Ve geri arama da denir. Sekme kimliği gerçekten mevcut değilse, chrome.runtime.lastError çağrılan geri aramada ayarlanır. Dolayısıyla, kilitlenen sekmeleri algılamanın tek (ancak potansiyel olarak yanlış) yolu bir zamanlayıcıyı ayarlıyor ve geri arama çağrılmadığında zaman aşımı olmasını bekler gibi görünüyor. –

+1

@RolandPihlakas Bir bilet açtım: https://crbug.com/439780 –

+0

Oh, teşekkürler, iyi fikir! Bu alışkanlık haline gelmeli ... –

İlgili konular