
Një ekip që ofron rreth 12 lojëra HTML5 si aplikacione Android zbuloi dështime të nisjes pasi shtoi një raportues gabimesh. Shkaku kryesor nuk ishte kodi i lojërave, por mungesa e tri funksioneve standarde në versione të vjetra të Android WebView: CanvasRenderingContext2D.roundRect, Array.prototype.at dhe structuredClone.
roundRect përdorej për butona me qoshe të rrumbullakosura dhe kartën e shpërndarjes në një lojë me makinë kapëse; at shfaqej në shumë pjesë të kodit, ndërsa structuredClone kopjonte të dhënat e ruajtjes në dy lojëra menaxhimi. Testet në telefona të rinj nuk e zbuluan problemin. Në pajisje të vjetra, me WebView rreth versionit Chrome 90, lojtarët shihnin ekran të bardhë dhe largoheshin pa raportuar gabimin.
Ekipi krijoi një skedar të përbashkët pajtueshmërie, që ngarkohet përpara skripteve të lojërave dhe plotëson funksionet që mungojnë. Zëvendësimi për structuredClone mbështetet te JSON dhe nuk ruan Maps, Dates apo referenca ciklike; për këto lojëra mjaftonte, pasi të dhënat e ruajtura ishin JSON i thjeshtë.
Zgjidhja u shoqërua me një test automatik për roundRect dhe përfshihet vetëm në paketat për dyqanet e aplikacioneve, jo në serverin e zhvillimit. Loja me makinë kapëse mori përditësimin korrigjues 1.0.4 po atë ditë; gabimet e nisjes nga ai version pushuan.
Burimi: DEV Community (Web Dev Feed) — lexoni artikullin e plotë në anglisht.

