Odzyskiwanie, przechowywanie i rozwiązywanie problemów
Rozdział 6: Odzyskiwanie, przechowywanie i rozwiązywanie problemów
Chrome przerwie rozszerzenie. To nie jest pytanie „czy" — service workery zasypiają w bezczynności, karty są zamykane, Chrome odzyskuje pamięć pod obciążeniem. Ten rozdział pokazuje, jak rozszerzenie przetrwa i co robić, gdy szwy się rozejdą.
Model odzyskiwania w jednym akapicie
Każde nagranie zapisuje swoje fragmenty audio i metadane do IndexedDB (lokalna baza danych przeglądarki) na bieżąco. Jeśli Chrome zabije rozszerzenie w trakcie nagrywania, fragmenty pozostają. Następnym razem, gdy otworzysz panel boczny, pojawiają się na liście saved on this device z przyciskiem Upload all — zalogowani użytkownicy mogą ponowić przerwane przesyłanie od miejsca, w którym się zatrzymało, dzięki wznawialnym wieloczęściowym przesyłaniom. Anonimowi użytkownicy mogą pobrać dźwięk na komputer lub zalogować się i przesłać go później. Nic nie jest po cichu tracone.
Ta sekcja to podsumowanie; notatki wydań dla wersji 1.6–1.9 mają pełną historię klas błędów, które to zastąpiło.
Lista „saved on this device"
Otwiera się na górze panelu bocznego, gdy istnieją jakieś lokalnie zainscenizowane nagrania. Każdy wiersz pokazuje:
- Tytuł spotkania (lub „Untitled —
<date>" dla nagrań, które nigdy nie otrzymały tytułu). - Zarejestrowany czas trwania.
- Status (Ready to upload / Uploading / Failed / Finalized).
- Przyciski: Upload (zalogowany) lub Download / Delete.
Upload all na górze listy opróżnia kolejkę. Kończy działanie, gdy tylko przegląd powtórzenia sygnalizuje zakończenie, zamiast czekać na pełny czteromykominutowy termin, więc czuje się responsywnie.
Gdy Chrome zabija rozszerzenie w trakcie nagrywania
Każde z tych zdarzeń może się zdarzyć i jest obsługiwane:
- Karta, którą nagrywasz, zostaje zamknięta. Service worker otrzymuje zdarzenie
tabs.onRemovedi uruchamia normalne Stop + opróżnienie przesyłania, zanim Chrome może uśpić service worker. - Karta nagrywania ulega awarii. Przekaźnik skryptu treści mikrofonu ginie; po 5 sekundach braku klatek PCM panel boczny pokazuje ostrzeżenie „microphone signal was lost". Nagrywanie jest zatrzymywane, a fragmenty przechwycone do tego momentu są zainscenizowane do odzyskania.
- Service worker jest odzyskiwany przez Chrome. Przy następnym zimnym starcie rozszerzenie pinguje dokument offscreen; jeśli odpowie, nagrywanie kontynuuje płynnie, jeśli nie, offscreen jest porzucany, a panel wraca do konfiguracji z nienaruszonymi zainscenizowanymi fragmentami.
- Dokument offscreen jest odzyskiwany pod obciążeniem pamięci. Jego handler
pagehidewymusza zatrzymanie nagrywania. 30-sekundowe zabezpieczenie awaryjne stanu mikrofonu wewnątrz offscreen również zatrzymuje nagrywanie, jeśli każdy zewnętrzny sygnał zostanie utracony. - Przeglądarka zostaje zamknięta podczas nagrywania. Nagranie pojawia się na liście „saved on this device" następnym razem, gdy otworzysz Chrome.
Jedyny przypadek, który wcześniej był po cichu stratny — spotkanie Google Meet kończące się w nawigacji SPA — jest obsługiwany przez service workera obserwującego, czy karta opuszcza URL z kodem spotkania bezpośrednio, niezależnie od skryptu treści.
Gdy przesyłanie zawodzi
Przesyłania używają wznawialnego transferu wieloczęściowego. Jeśli część zawodzi, tylko ta część jest ponawiana. Jeśli całe przesyłanie ginie w połowie transferu:
- Zainscenizowane fragmenty pozostają w IndexedDB.
- Nagranie pojawia się na liście „saved on this device" ze statusem Failed.
- Zalogowany: Upload w tym wierszu wznawia transfer od ostatniej udanej części. Dla długich spotkań nie jest to pełne ponowne przesyłanie.
- Anonimowy: Download zapisuje dźwięk na komputer jako plik
.webm; możesz odtworzyć go lokalnie lub przesłać później po zalogowaniu.
Zarządzanie pamięcią
Lokalne nagrania nie są już automatycznie usuwane po 30 dniach. Jeśli traktujesz rozszerzenie jako samodzielny rejestrator — nagrywając spotkania, przechowując pliki lokalnie, nigdy się nie logując — stare nagrania kiedyś znikały po cichu. To zostało naprawione.
Tylko dwie kategorie są bezpiecznie automatycznie czyszczone:
- Zakończone sieroty — przesyłanie potwierdziło, że nagranie jest bezpiecznie w R2, a lokalna kopia jest teraz zbędna.
- Sieroty o rozmiarze 0 bajtów — nagranie zginęło, zanim jakikolwiek dźwięk został przechwycony; nic do odzyskania.
Przy 500 MB zainscenizowanych lokalnych nagrań na górze panelu bocznego pojawia się żółte ostrzeżenie o pamięci. Jest doradcze — żadne dane nie są usuwane — ale to zachęta do zalogowania się i przesłania lub pobrania i wyczyszczenia.
Aby wyczyścić konkretne nagranie: kliknij Delete w jego wierszu na liście „saved on this device". Jeśli nagranie ma nieprzesłane notatki na żywo, usunięcie prosi o potwierdzenie.
Typowe problemy
„Ikona rozszerzenia jest wyszarzona na chrome://, edge:// lub Chrome Web Store."
Chrome zabrania rozszerzeniom działania na stronach chrome://, stronach edge:// i samym Chrome Web Store. To ograniczenie ogólnobrowserowe; SeaMeet nic nie może zrobić. Otwórz spotkanie w normalnej karcie.
„Przechwytywanie karty nie powiodło się z „Cannot access a chrome:// URL" lub „Extension not allowed for this tab"."
Karta została otwarta przed zainstalowaniem rozszerzenia. Chrome odmawia podłączenia przechwytywania kart do karty, która nie ma przyznania uprawnień. Odśwież kartę i spróbuj ponownie.
„Nagrania pokazują się jako 0:00 na liście odzyskiwania."
To był błąd w starszych wersjach — czas trwania był zapisywany tylko przy zatrzymaniu, więc przerwane nagranie go nie miało. Teraz jest zapisywany na bieżąco podczas nagrywania, więc dzieje się to tylko wtedy, gdy nagranie zakończyło się przed pierwszym zapisem czasu trwania. Wraca do —, gdy nieznane.
„Przesłany plik odtwarza się, ale pokazuje nieznany / nieskończony czas trwania."
Nagrania do 100 MB mają swoje metadane czasu trwania przepisane przed zakończeniem przesyłania, więc dla nich jest to naprawione. Większe lub wznowione nagrania zachowują awaryjne rozwiązanie z łatką Part-1 — plik odtwarza się, ale niewielka liczba odtwarzaczy może nieprawidłowo przeskakiwać. Spróbuj VLC jako obejścia.
„Spotkanie Meet się zakończyło, ale nagranie trwało dalej."
Ta klasa błędów została naprawiona w 1.9. Jeśli zdarzy się na 1.9 lub nowszej, zgłoś proszę — z numerem wersji z chrome://extensions/ i notatką o platformie spotkania.
„Napisy zatrzymały się w środku spotkania."
Zamiana mowy na tekst w czasie rzeczywistym automatycznie łączy się ponownie kilka razy; gdy się wyczerpie, nad transkrypcją pojawia się baner „Retry captions". Kliknij go. Nagrywanie trwa cały czas — żaden dźwięk nie jest tracony.
„Nagranie z rozmowy w Meet ma zły tytuł (tytuł karty)."
Zostało to naprawione w 1.8 — nagrania rozszerzenia teraz zaczynają się jako „Untitled — <date>", pasując do domyślnej ochrony nazw aplikacji internetowej, dzięki czemu tytuł spotkania wygenerowany przez AI poprawnie go zastępuje po przesłaniu. Jeśli widzisz to na 1.8 lub nowszej, zmiana nazwy przez AI zwykle nadrabia w ciągu minuty.
Kiedy zgłosić błąd
- Nagranie nie pojawiło się na liście „saved on this device" po przerwaniu.
- Upload all zgłasza sukces, ale nagrania nie ma w Twojej bibliotece internetowej.
- Rozszerzenie powoduje awarię Chrome (a nie tylko łagodnie zawodzi).
- Jakakolwiek cicha utrata danych.
Zgłoś w repozytorium aplikacji desktopowej (seasalt-ai/seameet-app-desktop) z wersją rozszerzenia, wersją przeglądarki i, jeśli to możliwe, zrzutem ekranu panelu bocznego.
Krótki przewodnik
| Objaw | Spróbuj |
|---|---|
| Rozszerzenie nie nagrało | Odśwież kartę, potem spróbuj ponownie |
| Brakujące nagranie po awarii | Sprawdź listę „saved on this device" w panelu bocznym |
| Utknięte przesyłanie | Kliknij Upload ponownie w wierszu — wznawialny wieloczęściowy |
| Napisy się zatrzymały | Kliknij Retry captions w banerze nad transkrypcją |
| Ostrzeżenie o pamięci na 500 MB | Zaloguj się i Upload all, lub Download i Delete |
| Spotkanie nagrywało dalej po zakończeniu | Uaktualnij do 1.9+, jeśli jeszcze tego nie zrobiłeś |
Last updated: 2026-08-27
← Rozdział 5: Logowanie i synchronizacja z aplikacją internetową
Opublikowano: