API privées : iCamCorder privé de vieux iPhone

Anthony Nelzin-Santos |

ui-screen-imageDepuis décembre 2009, Apple permet l'utilisation d'une API autrefois privée, UIGetScreenImage(). Celle-ci permet de prendre une capture d'écran sans de limitation particulière, ce qui a ouvert la porte à un détournement de cette fonction pour créer des applications permettant aux iPhone EDGE ou 3G d'enregistrer de la vidéo en enregistrant l'image vue par le capteur photo et affichée sur l'écran, comme le fait iCamCorder.

Le développeur de cette application, Manfred Nerurkar, explique sur son blog qu'il a été appelé par le département « relations aux développeurs » d'Apple, qui lui a appris que cette API ne pouvait plus être librement utilisée, et qu'elle redevenait privée.

Les développeurs ont désormais deux choix pour prendre des captures d'écran et préserver le fonctionnement de leurs applications. Le premier est d'utiliser des méthodes utilisant Quartz, ce qui empêche l'accès à la vidéo, la photo et certains contenus OpenGL. L'autre méthode consiste à utiliser AVFoundation, beaucoup plus utile, mais limité à l'iOS 4.

Si Nerurkar ou d'autres décidaient d'utiliser AVFoundation, qui est leur solution viable, ils videraient leur application de leur substance : elles permettent à l'iPhone EDGE et à l'iPhone 3G de filmer, or le premier est incompatible avec l'iOS 4, et les utilisateurs du second sont nombreux à être resté sous iPhone OS 3. Autant dire que les discussions ont repris de plus belle dans les forums développeurs…

Via TUAW

avatar drkiriko | 
Comment jeter des mois de travail à la poubelle. Apple devrait indemniser les développer l'aisés par des changements de ce type. Dans le cas contraire, Apple interdit en quelque sorte de travailler, ce qui est purement illégal en droit commercial. Allez SJ, pioche dans tes milliards et donne quelques milliers, ça devrait pas être trop dur !
avatar Homer Simpson | 
Est-il légal de changer les termes d'un contrat, celui-ci une fois signé ? N'est-ce pas ce que fait Apple en s'amusant à changer le status de ses API (publiques/privées) en cours de route, en particulier quand les conditions deviennent plus restrictives pour les développeurs ?
avatar drkiriko | 
@ oomu : Ah, Ah, Ah, relisez le contrat, bin voyons c'est quelle page ? C'est un peu comme le contrat d'iTunes: tu acceptes tout va bien, t'est pas d'accord, plus de mise à jour, impossible d'utiliser le téléphone...(légalement). Si il y en a un qui a vu le contrat d'iTunes chez Bouygues, SFR...avant la signature de l'achat de l'iPhone, qu'il me tienne au courant. Quand j'ai acheté l'iPad, aucun vendeur ne m'a parlé d'iTunes : quand tu l'allumes l'iPad t'impose de l'initialiser via iTunes : vas expliquer à ton gamin que papa va ramener l'appareil parce qu'il n'est pas d'accord avec le contrat...tu cliques comme tout le monde sur OK et tu te la ferme, le dieu Apple a encore gagné. Depuis tous temps des entreprises font des choses illégales, mais les sanctions sont tellement légères par rapport aux bénéfices résultant des escroqueries, quelles ne se privent pas (entente sur les prix par exemple...).
avatar mfam | 
Et en droit commercial, le fait d'utiliser une API privée ? C'est aisé ou c'est léser ? A l'aise Blaise, ou crime de lèse-majesté ?
avatar ibabar | 
Tiens, y en a qui ne lisent pas la news avant de poster... ou alors ils sautent la première phrase et du coup ne comprennent plus rien...
avatar gilzecat | 
Apple à fait quelques exceptions sur les api, cela n'empêche pas le fait que normalement, il n'avait pas le droit de l'utiliser. C'est un risque encouru. Quant on fait des choix on les assume. Après le reste est ridicule. Toutes les personnes qui ont codé une application sous os 7, 8, 9 vont demander une subvention parce qu'avec 10.6 ça ne fonctionne plus... Apple demande de ne plus utiliser une api privée et de se mettre à jour, il n'y a rien de condamnable là-dedans.
avatar drkiriko | 
@ Nesus : @ Nesus : En général, les API sur les autres OS, DLL et compagnie, évoluent. Les développeurs peuvent corriger et adapter leur travail pour qu'il reste fonctionnel. Chez Apple, il y a un dictat, qui sans rentrer dans le débat, peut du jour au lendemain interdire ou autoriser l'utilisation de telle ou telle API. Si j'ai bien compris, dans le cas présent, Apple a interdit l'usage d'une API et le développeur n'a aucune solution de remplacement équivalente. Comme tu l'as si bien dit, il n'avait qu'à pas prendre le risque...j'en déduis que si SJ te demande de baisser la culotte, tu seras contraint de le faire, donc par précaution, tu n'en mets pas. Je te fais remarquer que si MS prenait les mêmes positions qu'Apple, la communauté internationale, y compris les pro-Mac s'insurgeraient; dans la cas d'Apple, c'est rarement le cas, les gens en deviennent résignés.
avatar varbena | 
@liocec >"Je te fais remarquer que si MS prenait les mêmes positions qu'Apple, la communauté internationale, y compris les pro-Mac s'insurgeraient; dans la cas d'Apple, c'est rarement le cas, les gens en deviennent résignés." Et quand Microsoft laisser tombe WM6 pour lancer WP7, c'est bien plus d'une API qui change. C'est toutes, y'a rien de compatible, les applis non plus, et on t'oblige même à abandonner C/C++ pour passer à C#. Chez Microsoft il y a donc aussi un "diktat" de ce qui est autorisé ou non. Mais là ça ne te dérange visiblement pas... Et Je n'ai pas souvenance que les "pro-mac" ou moi se soyons offusqué que MS se décide enfin à pratiquer un grand ménage. La critique aurait plutôt été que MS attendent le succès de l'iPhone pour envisager de faire évoluer sa plate-forme mobile.
avatar drkiriko | 
@ Le Vendangeur Masqué : Les API ont changé, mais un programme qui fonctionnait en DOS en 1995 est toujours supporté par W7 (il y a évidement des exceptions). Il y a quelques jours je corrigeais avec BP (turbo Pascal) une app de base de données et ça tournait parfaitement. Essayes de faire ça avec Mac OS : ce n'est tout simplement pas supporté, ce qui ne me gêne pas plus que ça, l'OS d'Apple étant évidemment très nettement plus rapide que w7 (il y a des avantages à chaque chose).
avatar varbena | 
Pas Windows 7, Windows PHONE 7. Et WP7 n'est pas DU TOUT compatible avec Windows Mobile 6.
avatar drkiriko | 
@ Le Vendangeur Masqué : Ah, oui, désolé j'avais mal lu. Sur ce point tu as entièrement raison.
avatar R5555 | 
cest risque de mettre en ligne une application professionnelle, genre outils collaboratifs. si apple decide de lenlever la societe se retrouve coincee . pourrait y avoir la possibilite dinsraller des applis sans passer par l'app
avatar PtitRital67 | 
euh ben si c'est pour une appli pro collaboratif il n'y a AUCUNE raison de passer par l'AppStore
avatar drkiriko | 
@ oomu : Les app privées sont réservées à des grosses entreprises si je ne m'abuse. Toutes les TPE, PME sont écartées d'office de la possibilités de développer pour un usage interne. Si je me trompe, merci de me prévenir parce que l'on cherche un moyen pour le faire (légal...le moyen).
avatar rick75 | 
@didier31 (j'ai de la peine à comprendre ta phrase, fait un peu attention à l'orthographe stp! :-) ) Les entreprises reçoivent des outils d'administration et d'installation pour "préparer" la flotte d'iPhone en fonction des besoins de l'entreprise, de manière à ce que tous les appareils soient configurés de la même manière et très rapidement. Dans le cas d'application spécifique pour une entreprise, elle est utilisable sans passer par l'appstore. C'est comme la nouvelle application utilisée sur les iPhones dans les AppleStore US. Tu ne trouves pas cette application sur l'AppStore et pourtant, les shops d'Apple l'utilise.

CONNEXION UTILISATEUR