Chrome 拡張機能 — タブの自動更新

Chrome タブのライフサイクル: リロードが実際に開始されるタイミング

リロードは、ページ内のスクリプトがたまたま起動したときではなく、Chrome アラームが Service Worker に到達したときに起動されます。

タブはスリープ、破棄、およびメモリ不足によって破棄されます。ポップアップが閉じます。ページタイマーは文書とともに消滅します。 Auto Refresh Turbo は拡張サービス ワーカーでスケジュールを保持し、アラームが発生したときに tabs.reload を呼び出します。そのため、カウントダウンがポップアップよりも長く存続する可能性があります。

タイムライン内の俳優

  • サービス ワーカー — セッション状態と次のアラームを所有します
  • chrome.alarms — スケジュールされたティックのためにワーカーを目覚めさせる
  • tabs.reload — そのタブ ID に対して通常またはハード リロードを実行します
  • ポップアップ / バッジ / オプションのページ上チップ — 残り時間の表示。権威ではない

詳細な製品パス: タブの自動更新の仕組み。

単一サイクル

<オル>
  • タブの間隔 (固定またはランダム) で [開始] を押す
  • ワーカーはセッションを保存し、次のアラームを作動させます
  • UI サーフェスに残り時間が表示される
  • アラームが鳴る → Chrome がタブをリロードする
  • セッションが継続すると、次の遅延が有効になります
  • スケジュール ルール、N 後の停止、インタラクションの停止、または疑わしいページの停止により、ループが一時停止または終了する場合があります
  • タブがバックグラウンドにある場合

    バックグラウンド タブは、ページの JavaScript に対して調整できます。これが、コンテンツ スクリプトのみのタイマーが弱いコア ループである理由の 1 つです。アラームとワーカーのスケジュール設定は、Chrome 独自の拡張機能と電源ポリシーに従って、ページがフォーカスされていない場合でも、リロード試行を間隔に合わせて維持することを目的としています。

    破棄および凍結されたタブ

    Chrome はメモリを解放するためにタブを破棄することがあります。セッションが有効なままであれば、後でリロードしてもタブ ID がターゲットになります。ドキュメントが新たにロードされます。タブが完全に閉じられた場合、そのセッションは終了するはずです。閉じられたタブはサイレントゾンビではありません。

    Service Worker が再起動します

    労働者は眠ることができます。ローカル ストレージに保存されたスナップショットは、再起動後のセッションの再構築に役立ちます。 URL と間隔は、閲覧履歴製品を構築するためではなく、その復元パス用に保存されます。 プライバシー ポリシーをご覧ください。

    ポップアップを閉じてもセッションは停止しません。ワーカーはアラームを維持し、ポップアップを再度開くと残り時間が再び表示されるはずです。更新を終了する場合は、「停止」を押してください。

    スケジュール ウィンドウと時計

    毎日のウィンドウの外側では、セッションは一時停止されます。ウィンドウが開くまでアラームはリロードされません。それはストップではありません。 スケジュールの一時停止と停止および毎日のスケジュールで状態を明確にします。

    リロード後、UI が再マウントされます

    完全にリロードすると、新しいドキュメントが作成されます。オプションのビジュアル タイマーが再マウントされ、ワー​​カーと再同期されます。早期に注入するとギャップが短くなります。次の点火時間は作業者が決定します。

    火災を防ぐことができるもの

    • 一時停止のスケジュールを設定する
    • 停止 / N の後に停止
    • クリック/入力時に停止
    • 不審なページ停止
    • 権限が不足している、または URL スキームがリロードできない

    チュートリアル: トラブルシューティング。

    複数タブのタイミング

    各タブ セッションには独自のアラームとオプションがあります。 5 つのタブは 5 つの独立したライフサイクルを意味します。これは壁に便利ですが、注意しないと単一の原点に過負荷がかかりやすくなります (レート制限)。

    試してみる

    Auto Refresh Turbo をインストールし、30 秒のセッションを開始してポップアップを閉じ、タブがスケジュールどおりにリロードされることを確認します。

    関連

    探索を続けよう

    興味深い