Ytelsen til Chrome i iOS har alltid vært hemmet av at renderingmotoren den har vært nødt til å bruke, UIWebView, også har måttet kjøres som en del av selve nettleserprosessen. Dette har ført til at hele nettleseren har krasjet dersom WebView-komponenten krasjer eller går tom for minne.
I de fleste andre utgaver av Chrome benyttes «out-of-process»-rendering, noe som normalt forhindrer at hele nettleseren krasjer når renderingmotoren får problemer.
WKWebView
I går kom Google med Chrome 48 til iOS, og denne bruker ikke lenger UIWebView, men den «nye» WKWebView-komponenten som renderingmotor. Dette skal gjøre underverker på en rekke områder for Chrome i iOS.
Ikke bare skal stabiliteten være kraftig forbedret. JavaScript-ytelsen, i alle fall i Octane-testen, skal være opptil 11 ganger høyere. Dette skyldes trolig primært at bruken av WKWebView også gir til Nitro, den raskeste JavaScript-motoren i iOS.
Dessuten har WKWebView bedre støtte for webstandarder enn UIWebView, skrollingen av websider skal oppleves som jevnere, og svitsjing til bakgrunnsfaner skal sjeldnere enn tidligere føre til at sidene lastes på nytt.
WKWebView ble introdusert allerede i iOS 8, som kom i september 2014. Ideelt sett burde Google har byttet til denne allerede da. Men til tross for de mange fordelene, var det også en hel del fallgruver knyttet til en slik overgang.
Ikke «plug-and-play»
For ifølge Google var det på ingen måte bare å plukke ut UIWebView og å sette inn WKWebView i stedet.
Mye grunnleggende funksjonalitet som finnes i UIWebView, er ifølge Google fjernet i WKWebView. Dette inkluderer funksjonalitet for administrasjon av cookies og protokoller, i tillegg til begrensninger knyttet til filopplasting og håndtering av SSL-sertifikater.
Underveis i prosessen ble det også oppdaget en rekke problemer med Chrome og WKWebView som ikke samtidig berørte Safari.
– Jeg lurer på på hvilket tidspunkt fordelene ved å bruke WKWebView vil være større enn ulempene. Inntil videre kommer vi til å gi beskjed til våre brukere at de vil ha en bedre opplevelse med Safari, skrev et prosjektmedlem så sent som i september i fjor.
Chrome er ikke den første tredjepartsnettleseren til iOS som tar i bruk WKWebView. I alle fall Firefox for iOS bruker også WKWebView. Noe av årsaken til at Mozilla greide dette raskere enn Google, kan være at Mozilla ikke hadde noen eksisterende iOS-nettleser å ta hensyn til, siden Firefox for iOS først ble lansert for et par måneder siden.