Apple bevestigt discriminatie van webapps

Door: | 19 maart 2011 09:03

Apple

De nieuwe, snelle JavaScript-engine op iOS is beperkt tot alleen Safari. Webapps ‘buiten’ die browser missen de optimalisaties van Safari, bevestigt Apple. Waarom is nog niet zeker.

Apple heeft bevestigd dat het webapps inderdaad achterstelt ten opzichte van Safari zelf. Websites die vanaf het thuisscherm van een iOS-apparaat gestart worden kunnen namelijk geen gebruik maken van de nieuwe, snelle, JavaScript engine ‘Nitro’. Ook enkele tijdelijke opslagmogelijkheden en renderingsfuncties in de nieuwste versie van de mobiele Safari zijn niet toegankelijk voor anderen.

Ook native apps hebben last

Het bedrijf bevestigt dat aan de Britste technieuwssite The Register. Die website ontdekte eerder deze week dat Apple webapps benadeelt. Dat blijkt nu verder te gaan. Ook alternatieve browsers en applicaties die (delen van) hun content via een website ophalen hebben nadeel van deze praktijk.

Donderdag maakte het softwarebedrijf Blaze bekend dat de browser in iOS veel trager zou zijn dan die in Android. Dat zou blijken uit een onderzoek. Al snel werd bekend dat het bedrijf voor die test gebruik maakte van de UIWebView API. Juist met die functie worden de optimalisaties in de browser niet gebruikt. Blaze heeft inmiddels erkend dat hun testresultaten daardoor onbetrouwbaar zijn.

Het blijft onbekend waarom webapps die niet vanuit Safari gestart worden het moeten stellen zonder specifieke optimalisaties. Het zou bijvoorbeeld kunnen dat dit komt omdat versie 4.3 van iOS nog erg nieuw is. De functies worden daarom mogelijk later alsnog toegevoegd.

Beveiligingsfeature

Techblogger John Gruber geeft een andere verklaring voor de praktijken van Apple. Hij stelt dat het om beveiliging gaat. Nitro is met name sneller dan zijn voorganger vanwege het gebruik van ‘just-in-time’ (JIT) compilatie. Om dat te gebruiken moet het mogelijk zijn om delen van het ramgeheugen als uitvoerbaar aan te merken. Apple voorkomt dat echter met iOS, als beveiligingsmaatregel.

Windows, Mac OS X en Android staan JIT-compilatie wel toe. iOS is dus in principe veiliger wat dat betreft, maar dat heeft consequenties voor de snelheid.

Om toch mee te gaan in de snelheidsrace van browsers heeft Apple de mobiele Safari wel de Nitro engine met JIT-compilatie gegeven. Het bedrijf doet dat volgens Gruber omdat het Safari zelf genoeg getest heeft en dus kan vertrouwen. Met apps van derden wordt dat erg moeilijk.

'Apple wil webapps tegengaan'

Een appontwikkelaar beweert echter tegen The Register dat Apple webapps in de weg wil zitten. Volgens de anonieme bron gebruikt Apple subtiele gebreken om de kwaliteit van webapps te ondermijnen. Dat terwijl het bedrijf gewoon kan blijven pochen over de volledige ondersteuning van HTML5. De ontwikkelaar zou dat gehoord hebben via Apple.

Die laatste redenatie lijkt inmiddels minder geloofwaardig. Dat Apple er niet alleen op uit is om het gebruik van webapps tegen te gaan blijkt waarschijnlijk uit het feit dat native apps er ook last van hebben mits zij delen via het web oproepen.

Apple heeft overigens nog niet gereageerd op de vragen die Webwereld het bedrijf dinsdag heeft gesteld.