Screen Capture-API wieder verboten-Schluss mit Videoaufnahmen auf iPhone 2G und 3G?
kg, den 22. Juli 2010Im Dezember hat Apple die private UIGetScreenImage()-API zur Nutzung freigegeben, von der Anwendungen wie Ustream oder iCamcorder Gebrauch machen. Sie erlaubt es, den aktuellen Bildschirminhalt aufzuzeichnen – eine Funktion, die Videoaufnahmen mit iPhone classic und iPhone 3G zulässt. Nun hat Apple die Nutzung der API wieder verboten.
Apple ist nicht grundsätzlich abgeneigt, den Entwicklern mit Zugeständnissen entgegenzukommen: Dezember 2009 erlaubten sie den Entwicklern die Nutzung einer ansonsten privaten und undokumentierten Screen Capture-API, mit der eine App Screenshots eines Gerätes erstellen kann, unabhängig vom aktuellen Displayinhalt. Die Alternative ([theView.layer renderInContext:context]) hingegen erlaubt nur bestimmte Anwendungsgebiete, so fehlt zum Beispiel der Zugriff auf Videoebenen sowie die Vorschau der Kamera – genau diese wird aber auf iPhone 2G und iPhone 3G für die Aufzeichnung des Bewegtbilds genutzt.
Laut Apple Developer Relations hat Apple sich nun, da das iOS 4 erschienen ist, die API wieder zu verbieten, Anwendungen, die sie benutzen, werden nicht zugelassen, gleiches gilt auch für bereits vorhandene Anwendungen, die mit Updates versorgt werden sollen. Anstatt dessen soll die bisherige API zum Einsatz kommen, als Alternative steht die AVFoundation zur Verfügung, die im iOS 4 integriert ist.
Fakt ist: Zahlreiche Entwickler müssen wegen dieser neuen Entscheidung ihren Code umschreiben, außerdem bedeutet dies für die Apps, dass sie dann nur noch unter iOS 4 nutzbar sind – nicht aber unter iOS 3, das für das iPhone classic zur entwicklungstechnischen Endstation geworden ist. Nutzer des iPhone 2G könnten die eigentlich gerade für sie gedachten Video-Apps nicht mehr nutzen, außerdem betrifft es alle Nutzer von iPhone 3G oder 3GS, die entweder aus Jailbreak- oder aus Performancegründen nicht auf iOS 4 umsteigen möchten. Neben Video-Apps betrifft es auch Scanner-Anwendungen wie die von Red Laser.
Die Gründe für Apples Entscheidung wurden bisher nicht offen dargelegt, klar ist aber auch, dass die API zu keinem Zeitpunkt einen öffentlichen Status erhalten hat und damit eher ein Schattendasein führt. Die Nutzung wurde nur geduldet, nicht gezielt unterstützt. In iOS 4 ist eine API mit vergleichbaren Funktionen enthalten, diese macht die alte API unnötig.
Ein möglicher Grund für das Verbot der API könnte die Datensicherheit sein: Lässt sich eine solche App im Hintergrund betreiben, könnte dies Möglichkeiten für Hacker eröffnen, sensible Daten auszulesen: Alles, was sich im Vordergrund abspielt, *könnte* so ausgelesen werden. Das ist ein Problem, das iOS 4 betrifft – sollten die Videoapps iOS4- und multitaskingfähig werden, wäre genau diese Schwachstelle gegeben. Sollten sich Entwickler unter unseren Lesern befinden, würden wir uns über eigene Einschätzungen und Thesen freuen.