Aplikacje HTML są renderowane przez odtwarzacz przy użyciu przeglądarki internetowej (WebKit lub Chromium). Uruchamianie przeglądarki zwykle wymaga dużych zasobów systemowych (zwykle pamięcio RAM). Oznacza to, że jeśli używasz wielu aplikacji HTML, system może wyczerpać pamięć, a wydajność zostanie dotknięta.
Istnieją jednak pewne rodzaje aplikacji, które nie są naprawdę potrzebne do utrzymania działania w przeglądarce po początkowym renderowaniu. Zwykle są to te, których treść nie zmienia się lub zmienia rzadko.
Niektóre przykłady to:
- Aplikacja z formatowaniem tekstu (statyczna, tekst i formatowanie nie zmieniają się)
- Aplikacje geometryczne (statyczne, kształt i jego właściwości nie zmieniają się)
- Aplikacja daty (półstatyczna, data zmienia się raz dziennie)
- Aplikacja pogodowa (półstatyczna, aktualizacja co kilka godzin)
Jako optymalizację dla takich rodzajów aplikacji udostępniamy mechanizm, który pozwala aplikacjom instruować odtwarzacz, aby po zakończeniu renderowania uwiecznił zrzut ekranu. Gdy zrzut zostanie zapisany, system będzie go renderował przy użyciu naszego efektywnego pod kątem zasobów odtwarzacza obrazów, zamiast pełnoprawnej, zużywającej zasoby przeglądarki.
Skorzystanie z tego mechanizmu jest dość proste. Pomysł polega na tym, że po zakończeniu renderowania aplikacja powinna zmienić tytuł okna, aby powiadomić odtwarzacz, że może pobrać zrzut z aplikacji.
Gdy Twoja aplikacja jest gotowa, aby odtwarzacz pobrał zrzut, zmień tytuł okna zgodnie z poniższym przykładem:
document.title = '{"ready_for_cache": true}'