iOS 13 legt batterij­slurpende apps verder aan banden

Apple neemt in iOS 13 nieuwe maatregelen tegen apps die altijd op de achtergrond blijven draaien. Dat treft onder andere bekende iPhone-batterijslurpers zoals Facebook en Facebook Messenger. Die apps zijn nu vaak op de achtergrond actief omdat ze VOIP-oproepen moeten kunnen accepteren. Dat hoeft straks niet meer.

De API die ontwikkelaars van apps die je via internet laten bellen gebruiken, wordt aan banden gelegd. De API kan niet meer misbruikt gebruikt worden om apps op de achtergrond te laten draaien. Apps krijgen een seintje wanneer een oproep binnenkomt en kunnen dan opgestart worden.

Beperkingen iOS 13 vanaf april actief

Volgens Apple is dit positief voor de accuduur en snelheid van iedere iPhone. Ook de privacy van gebruikers gaat erop vooruit. Dat een app die niet door­lopend op de achtergrond aanwezig is minder accu gebruikt, spreekt voor zich. Het komt de snelheid echter ook ten goede omdat apps die afgesloten zijn geen RAM-geheugen gebruiken. Dat kan door andere apps gebruikt worden. Ook dataverzameling op de achtergrond is onmogelijk als een app afgesloten wordt.

Technisch gezien gaat het om de PushKit API. Die kon tot nu toe gebruikt worden om apps op de achtergrond actief te houden. De server kon gewoon iedere 10 minuten een stil pushbericht sturen. Er werd niet gecheckt of er daadwerkelijk een oproep binnenkwam. In iOS 13 moeten apps die het VOIP-deel van PushKit gebruiken ook daadwerkelijk de telefoon via CallKit laten overgaan. Doen ze dat niet? Dan start de app niet op.

Achtergrondtaken slimmer plannen

Ontwikkelaars hebben nog tot april om hun werkwijze aan te passen. Daarna wordt de API definitief beperkt. Dit wil overigens niet zeggen dat apps geen werkzaamheden meer op de achtergrond uit kunnen voeren. Voor het verwerken van data of maken van back-ups kan een nieuwe API genaamd BackgroundTasks gebruikt worden. Apps kunnen taken om op de achtergrond uit te voeren in een wachtrij zetten. De iPhone zal deze op een gunstig moment, bijvoorbeeld wanneer het toestel aan de lader ligt, uitvoeren.