Validátor manifestu webovej aplikácie
Overte súbor manifest.json PWA podľa špecifikácie Manifest webovej aplikácie a ukážte si maskovateľné ikony v porovnaní s bezpečnou zónou adaptívnych ikon systému Android.
Výsledok
Progresívna webová aplikácia sa nainštaluje iba vtedy, keď jej súbor manifest.json spĺňa polia, ktoré prehliadače a obchody s aplikáciami skutočne kontrolujú. Tento validátor analyzuje váš nahraný manifest a prechádza špecifikáciami W3C Web App Manifest pole po poli: označí chýbajúci názov a short_name, prázdne alebo poškodené pole ikon, ikony bez zdroja, veľkosti alebo typu, neanalyzovateľnú štartovaciu adresu URL, nerozpoznanú zobrazenú hodnotu a reťazce theme_color alebo background_color, ktoré nie sú platnými farbami CSS. Každý nález je zobrazený ako obyčajná veta v angličtine – nie surová špecifikácia – takže presne viete, čo treba opraviť a prečo je to dôležité pre inštaláciu.
Vrahom je náhľad maskovateľnej ikony bezpečnej zóny. Adaptívne ikony systému Android aplikujú tvar masky vybratý OS – kruh, veverička, slza a ďalšie – na akúkoľvek ikonu označenú ako „účel“: „maskovateľná“. Čokoľvek mimo stredového kruhu pokrývajúceho 40 % výrezu ikony možno odrezať v závislosti od masky, ktorú zariadenie aplikuje. Nahrajte súbory s obrázkami ikon, na ktoré odkazuje váš manifest, spolu s manifestom.json a tento nástroj ich porovná podľa názvu súboru, nakreslí každú maskovateľnú ikonu na plátno v jej deklarovanej veľkosti a prekryje presne ten kruh bezpečnej zóny, aby ste na vlastné oči videli, či vaše umelecké dielo prežije orezanie.
Odznak vyhovujúci/neúspešný pod každým náhľadom nie je kozmetickou položkou kontrolného zoznamu – pochádza zo skutočnej analýzy na pixel dekódovaných obrazových údajov. Nástroj meria, koľko obsahu, ktorý nie je na pozadí, sa nachádza mimo kruhu bezpečnej zóny (obsah, ktorý by maska orezala) a aká časť ikony je priehľadná (maskovateľné ikony by mali mať úplne nepriehľadné pozadie, pretože priehľadnosť umožňuje presvitať spodnú farbu masky). Obe kontroly prebiehajú proti skutočnej bitovej mape, ktorú ste nahrali, takže výsledok odráža váš skutočný súbor ikony, nie odhad.
Všetko sa deje lokálne vo vašom prehliadači: manifest.json sa číta pomocou File API, ikony sa dekódujú pomocou createImageBitmap alebo FileReader/Image fallback a pixely sa analyzujú na plátne v pamäti. Nič sa neodovzdáva na server, čo je dôležité, ak váš manifest odkazuje na zatiaľ neverejný názov aplikácie, interné cesty štart_url alebo ikony vo vývoji.