Przewodnik kompatybilności przeglądarek

Kompletny przewodnik kompatybilności przeglądarek dla Compresso - wsparcie WebAssembly, wymagania wydajnościowe i rozwiązywanie problemów

Przewodnik kompatybilności przeglądarek

Wymagania nowoczesnej przeglądarki

Compresso używa najnowocześniejszej technologii WebAssembly do przetwarzania po stronie klienta. Zrozumienie kompatybilności przeglądarek zapewnia najlepsze doświadczenie.

Przegląd obsługiwanych przeglądarek

Chrome

Wersja 90+

✓ Doskonałe

Firefox

Wersja 88+

✓ Doskonałe

Safari

Wersja 14+

⚠ Dobre

Edge

Wersja 90+

✓ Doskonałe

🔧 Wymagania WebAssembly

Wymagania technologii podstawowej

✅ Wymagane funkcje

WebAssembly (WASM)

Podstawowa technologia do przetwarzania plików po stronie klienta

Web Workers

Przetwarzanie w tle bez blokowania interfejsu użytkownika

File API

Odczyt plików z urządzenia użytkownika

Moduły ES6

Nowoczesny system modułów JavaScript

🚀 Opcjonalne ulepszenia

SharedArrayBuffer

Szybsze przetwarzanie wideo z wielowątkowością

Instrukcje SIMD

Przyspieszone operacje matematyczne

Service Workers

Funkcjonalność offline i cache'owanie

📊 Szczegółowa macierz wsparcia przeglądarek

Przeglądarka WebAssembly Web Workers SharedArrayBuffer Wydajność
Chrome 90+ ✓ Pełne ✓ Pełne ✓ Pełne Doskonała
Firefox 88+ ✓ Pełne ✓ Pełne ⚠ Ograniczone Doskonała
Safari 14+ ✓ Pełne ✓ Pełne ✗ Brak Dobre
Edge 90+ ✓ Pełne ✓ Pełne ✓ Pełne Doskonała

📱 Wsparcie przeglądarek mobilnych

iOS Safari

iOS 14.0+ ✓ Obsługiwane
iOS 13.0-13.7 ⚠ Ograniczone
iOS < 13.0 ✗ Nieobsługiwane

Uwaga: iOS Safari ma ścisłe limity pamięci. Duże pliki mogą nie działać na starszych urządzeniach.

Android Chrome

Chrome 90+ ✓ Doskonałe
Chrome 80-89 ✓ Dobre
Chrome < 80 ✗ Nieobsługiwane

Uwaga: Android Chrome generalnie ma lepszą wydajność niż iOS Safari dla WASM.

⚡ Rozważania wydajnościowe

Charakterystyki wydajności przeglądarek

🚀 Chrome i Edge (Chromium)

Mocne strony
  • • Doskonała wydajność WASM
  • • Pełne wsparcie SharedArrayBuffer
  • • Zaawansowane zarządzanie pamięcią
  • • Akceleracja sprzętowa
Idealne do
  • • Przetwarzania dużych plików
  • • Złożonych konwersji wideo
  • • Operacji wielowątkowych
  • • Przepływów pracy profesjonalnych

🦊 Firefox

Mocne strony
  • • Doskonała kompilacja WASM
  • • Dobra wydajność pamięci
  • • Silny model bezpieczeństwa
  • • Konsystentna wydajność
Ograniczenia
  • • Ograniczone SharedArrayBuffer
  • • Wolniejsze przy złożonych operacjach
  • • Mniej akceleracji sprzętowej

🧭 Safari

Mocne strony
  • • Dobre wsparcie WASM
  • • Energooszczędny
  • • Zintegrowany z macOS/iOS
  • • Przyzwoita wydajność mobilna
Ograniczenia
  • • Brak SharedArrayBuffer
  • • Ściślejsze limity pamięci
  • • Wolniejsza kompilacja WASM
  • • Ograniczona wielowątkowość

🔍 Wykrywanie przeglądarki i fallbacki

Jak Compresso radzi sobie z różnicami przeglądarek

1

Automatyczne wykrywanie funkcji

Compresso automatycznie wykrywa możliwości Twojej przeglądarki i odpowiednio dostosowuje metody przetwarzania.

2

Progresywne ulepszenia

Zaawansowane funkcje jak wielowątkowość są używane gdy dostępne, ale przetwarzanie działa we wszystkich obsługiwanych przeglądarkach.

3

Delikatna degradacja

Jeśli zaawansowane funkcje nie są dostępne, przetwarzanie przechodzi do trybu jednowątkowego z jasnym informowaniem użytkownika.

❌ Nieobsługiwane przeglądarki

Przeglądarki które nie będą działać

Przeglądarki desktopowe

  • Internet Explorer (wszystkie wersje)
  • Chrome < 90
  • Firefox < 88
  • Safari < 14

Przeglądarki mobilne

  • iOS < 14 (iPhone/iPad)
  • Android Browser (domyślna przeglądarka)
  • Chrome Mobile < 80
  • Opera Mini (wszystkie wersje)

Co się dzieje jeśli Twoja przeglądarka nie jest obsługiwana? Zobaczysz przyjazną wiadomość wyjaśniającą wymagania i sugestie dotyczące kompatybilnych przeglądarek.

🛠️ Rozwiązywanie problemów z przeglądarkami

🐌 Niska wydajność

!

Zamknij inne karty przeglądarki

Zwolnij pamięć i zasoby CPU do przetwarzania

!

Sprawdź rozszerzenia przeglądarki

Niektóre rozszerzenia mogą interferować z WebAssembly

!

Spróbuj trybu incognito/prywatnego

Izoluje od rozszerzeń i problemów z cache

💾 Błędy braku pamięci

!

Użyj mniejszych plików

Podziel duże pliki na mniejsze kawałki jeśli możliwe

!

Uruchom ponownie przeglądarkę

Wyczyść wycieki pamięci i zresetuj dostępny RAM

!

Spróbuj inną przeglądarkę

Chrome generalnie ma najwięcej dostępnej pamięci

🔄 Nie udało się załadować WebAssembly

i

Sprawdź połączenie internetowe

Pliki WASM są pobierane przy pierwszym użyciu

i

Wyczyść cache przeglądarki

Uszkodzone cache'owane pliki WASM mogą powodować problemy z ładowaniem

i

Wyłącz blokery treści

Niektóre blokery zapobiegają ładowaniu WASM

🔧 Informacje dla deweloperów

Dla deweloperów: szczegóły techniczne

Używane biblioteki WASM

  • libheif: Dekodowanie obrazów HEIC/HEIF
  • Kodeki Squoosh: Kompresja obrazów (mozjpeg, webp, avif)
  • FFmpeg.wasm: Przetwarzanie wideo/audio
  • pdf-lib: Manipulacja PDF

Nagłówki bezpieczeństwa

  • COOP: Cross-Origin Opener Policy
  • COEP: Cross-Origin Embedder Policy
  • CSP: Content Security Policy zezwala na WASM
  • CORS: Właściwe nagłówki CORS dla zasobów

Wykrywanie funkcji: Compresso używa nowoczesnych API JavaScript do wykrywania możliwości przeglądarki przed próbą załadowania modułów WASM.

📈 Benchmarki wydajności

Typowe czasy przetwarzania

Czasy przetwarzania dla obrazu HEIC 10MB na nowoczesnym laptopie:

Chrome:
~2 sekundy
Firefox:
~3 sekundy
Safari:
~4 sekundy
Mobile Safari:
~8 sekund

* Czasy znacznie różnią się w zależności od specyfikacji urządzenia, złożoności pliku i optymalizacji przeglądarki