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łeFirefox
Wersja 88+
✓ DoskonałeSafari
Wersja 14+
⚠ DobreEdge
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
Uwaga: iOS Safari ma ścisłe limity pamięci. Duże pliki mogą nie działać na starszych urządzeniach.
Android Chrome
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
Automatyczne wykrywanie funkcji
Compresso automatycznie wykrywa możliwości Twojej przeglądarki i odpowiednio dostosowuje metody przetwarzania.
Progresywne ulepszenia
Zaawansowane funkcje jak wielowątkowość są używane gdy dostępne, ale przetwarzanie działa we wszystkich obsługiwanych przeglądarkach.
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
Sprawdź połączenie internetowe
Pliki WASM są pobierane przy pierwszym użyciu
Wyczyść cache przeglądarki
Uszkodzone cache'owane pliki WASM mogą powodować problemy z ładowaniem
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:
* Czasy znacznie różnią się w zależności od specyfikacji urządzenia, złożoności pliku i optymalizacji przeglądarki