Мое собственное расширение Google Chrome перестает работать через некоторое время, потому что setTimeout () в некоторых случаях не работает.
Следовательно, фоновый сценарий не отправляет сообщение в сценарий содержимого после некоторой необходимой задержки .
Я обнаружил эту проблему, написав множество операторов console.log ().
В качестве решения я подумал об использовании setInterval () до тех пор, пока сообщение не будет отправлено в сценарий содержимого :
var timer = setInterval(function() {
clearInterval(timer);
// Sending a message to the content script
}, 3000);
Мой код до, во время и после setInterval () тихий, поэтому я надеюсь, что этого фрагмента кода как-то хватит.
Кто-нибудь знает в В каких случаях эти тайм-ауты или интервалы не запускаются?
Или есть какие-то похожие варианты, которые я мог бы использовать?
Я подумал об использовании Chrome Вместо этого используется API сигналов тревоги, но сигналы тревоги могут использоваться только раз в минуту, а минимальная задержка составляет одну минуту, если я не ошибаюсь.