Est MonoTouch désormais interdits sur l'iPhone?
Un post récent par John Gruber note que la suite de jargon juridique:
3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.
A été modifié comme suit:
3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
Et fait l'observation suivante:
De ma lecture de ce nouveau langage est que les compilateurs, comme le Flash-pour-iPhone compilateur dans Adobe prochaine de Flash Professional CS5 version, sont interdits. Cela interdit également les applications compilées à l'aide de MonoTouch — un outil qui compile en C# et .NET applications pour l'iPhone.
Fait dans le fait d'interdire l'utilisation de Monotouch pour l'IPhone?
- Je me demande d'où cela laisse apple existants et monotouch développeurs légalement. Qu'en est-il des monotouch apps?
- Vous devez accepter cette nouvelle licence si vous souhaitez mettre quelque chose de nouveau dans iTunes Connect, mais je doute qu'ils vont tirer les choses de la banque qui ont été présentées précédemment. Cependant, ils /mai/ l'application présente avec de nouvelles applications qui ne sont pas 4.0 en fonction, mais n'ont pas déjà été soumis. Mais comme pour tout dans l'App Store, nous allons juste attendre et voir!
- Apparemment, cet accord est sous NDA
- apple.com/pr/library/2010/09/09statement.html aaaaaaaaaathankyooooooooooo laisser la folie commence!!
- Il a ÉTÉ interdit, jusqu'à aujourd'hui: http://www.apple.com/pr/library/2010/09/09statement.html
- Comme de 9/9/2010 c'est discutable. Apple est relaxant Règle 3.3.2 foxbusiness.com/markets/2010/09/09/...
Vous devez vous connecter pour publier un commentaire.
Mise à jour -
Oui, il semble assez clair de leur contrat de licence maintenant que si l'application est écrite en C# alors il serait violer la licence:
Ils ont même marteau dans un peu plus loin:
Une sorte de déception, MonoTouch et le Flash CS5 -> convertisseur d'iPhone sont très cool.
Mise à jour:
Apple a chuté de (presque) toutes les exigences techniques pour les langues et les bibliothèques pour iOS, donc MonoTouch est sans doute une solution viable. Voir L'annonce d'Apple.
La plupart des gens ici veulent simplement prendre Apple document par la parole et dire "oui, c'est interdit". Eh bien, voici mon point de vue: à ce stade, personne n'a vraiment aucune idée si MonoTouch va être interdit ou pas, et je vais vous expliquer pourquoi:
La Pomme accord de la version 3 (pas la dernière, celle d'avant) indique clairement que son illégal d'utiliser d'autres cadres pour développer des applications autres que ceux fournis par Apple:
Même si c'est le cas (et c'était effectivement le cas depuis le 2.x, apple n'a aucun problème à accepter les demandes qui font exactement cela. Par exemple, TOUS les jeux EA utilisation de scripts Lua, et beaucoup, beaucoup de gens l'utilisation de bibliothèques externes qui ne sont pas natives de l'iPhone. Même lorsque l'iPhone a ceux Api natives, Apple n'a jamais eu un problème à accepter les demandes avec les différentes versions de celui-ci, comme SQLite.
Mon point est que le fait de dire "OUI, ils vont être interdit" en ce moment est tout simplement WAAY trop tôt. La seule chose à ce point, c'est que Apple pourrait en fait l'utiliser pour l'interdiction des apps. Tout comme ils acceptent les Applications qui sont aujourd'hui à l'encontre de certaines de leurs règles, ils vont probablement continuer à le faire.
Il y a aussi le fait que des centaines (ou probablement quelques milliers?) des apps dans le magasin actuellement en cours d'exécution Mono, et Apple vous devez accepter les mises à jour de ces applications. Principales applications avec des millions de ventes ont été créés à l'aide de Mono (et Lua), et je doute qu'ils remboursement de chaque utilisateur.
Enfin, les applications d'Entreprise sont déployés pour Apple iphone sans son accord, et c'est un grand marché qui MonoTouch est sur (j'ai moi-même de développer les applications de l'entreprise). Il n'y a aucune façon, à ce point qu'Apple pourrait interdire le MonoTouch pour les applications, et qui sera probablement assez pour garder MonoTouch en vie pendant une longue période de temps.
Mise à jour:
les Nouvelles modifications aux sections 3.3.1, 3.3.2 et 3.3.9 ont fait MonoTouch (et tous les autres compilateurs croisés/langues/etc) tout à fait acceptable sur l'iPhone. Voir Apple annonce
Miguel n'a pas l'air de le penser. Voir la tweet et de Miguel réponse. Permet de ne pas réagir ici et dire que Monotouch est mort, ou arrêter de se développer avec Monotouch jusqu'à ce que, quelques précisions ont été apportées par toutes les parties concernées.
Qui a dit que je serait certainement commencer à mettre la pression sur Apple pour de tels draconienne des politiques de développement. Des choses comme cela, et la nébuleuse processus de l'approbation de la politique de l'iphone/ipad/touch apps devraient semer la peur dans le cœur des développeurs. Quelle est la prochaine, leur licence, indiquant que la seule plateforme d'Annonces, vous êtes autorisé à utiliser est sai? Ne pas permettre à la distribution des applications gratuites sans sai? Élever lentement Apple part du chiffre d'affaires des ventes de l'app? En tant que développeurs dans un verrouillée de l'éco-système, nous sommes sorte de grenouilles dans un pot d'eau chaude, et Apple est en tournant lentement la chaleur. C'est maintenant le temps d'explorer d'autres plates-formes mobiles, parce qu'ils vont mieux, la chose principale est de détenir des personnes pour la plate-forme Apple, c'est le manque d'applications sur d'autres plateformes.
J'ai passé des mois des soirées à travailler sur des idées pour une killer app iPhone en Objective C. Mon travail de jour est C#. J'ai téléchargé MonoTouch C# quand il est devenu une alternative viable et venons de passer 3 mois à convertir mon code pour iPhone spécifiques MonoTouch C#. Ce qui m'a arrêté en train de devenir fou en passant à partir de C#/Objective C.
Que dois-je faire maintenant jeter tout de suite et commencer à nouveau ou de donner up!?!
Je me sens vraiment désolé pour le Mono gars. C'est simplement faux. C'est une chose pour arrêter Adobe qui n'ont pas lancé leur produit et n'avons pas de clients et d'arrêter de MonoTouch qui font et ont également produit approuvé dans l'AppStore.
Pourquoi voudrait-on bâtir une entreprise et d'investir dans Apple quand ils vont le prendre tout de suite à une notification de moments sans devoir rendre des comptes ou douteux?
Clairement les développeurs et les clients d'Apple soin d'eux et de leurs produits est une rue à sens unique.
J'espère que Apple obtient battue pour cette ridicule de la politique. L'Arrogance n'est pas attrayant et généralement mauvais pour les affaires. C'est l'une des raisons pour lesquelles je n'ai pas commencé le développement sur iPhone.
La plupart des quincailleries et les fournisseurs d'OS sont heureux d'avoir des outils supplémentaires et le public à écrire à leur plate-forme. Apple est de prendre la position que son (braindead) outils sont le seul jeu en ville.
Le "Grand Frère" ad à partir de 1984 est de plus en plus pertinents...
MODIFIER
La façon dont il est écrit aussi semble impliquer que si j'ai écrit un .net pour objectif C/apple traducteur que le code n'est pas acceptable parce que le code d'origine n'a pas été objective c. C'est ridicule (et inapplicable.)
L'unité est également basée sur des Mono et avec un nombre considérable de produit commercial, j'imagine que c'est une question que nous n'avons pas entendu parler de la fin d'.
L'interdiction de toutes les applications qui ne sont pas écrits en Obj-C/C++ seraient, en théorie, l'interdiction de toute l'Unité jeux aussi, dont il existe un grand nombre déjà dans l'app store.
Cette question a également été posée sur l'Unité des Réponses site, et de leur réponse officielle est:
Être intéressant de voir ce qu'ils ont dit par Apple.
Le truc, c'est sûrement en disant qu'une application doit être écrit dans une certaine langue est un peu un abus de langage, car une fois que l'application est compilée, c'est toujours un binaire natif, peu importe comment il a été construit. Ma conjecture est que tout ce qu'ils peuvent rechercher est une sorte de signature dans le binaire pour détecter quel outil, il a été construit avec. Une approche erronée.
EDIT: Il y a un intéressant aperçu de la situation sur ce blog: monotouch maintenant morts dans l'eau ce qui ne les pommes nouvel iphone accord de développeur veux dire
Le nouveau contrat de licence est expressément clair à ce sujet. Donc, OUI, il sera banni.
Conseils, si vous voulez vraiment développer pour l'iPhone, essayez de XCode. Si vous êtes déjà familier avec Java ou C# ou encore mieux, C++, puis à apprendre Objective-C ne seront pas si difficile.
iPhone/iPad est des Pommes de nouveaux succès en affaires, et ils vont tout faire pour maintenir cette croissance, peut-être qu'ils n'interdit Monotouch apps maintenant, mais qui sait, il y prochain déménagement? Donc, si vous êtes vraiment intéressé par l'iPhone dev, au lieu d'avoir des cauchemars que votre travail pourrait être rejetée. Il suffit de passer à XCode, au moins qui fera baisser votre application rejeter pourcentage. Donc, mon conseil.
Je pense que quelque chose à envisager sérieusement de Apple est la motivation.
Je suis d'accord avec d'autres sentiments mis en ligne que Apple tente de prévenir la banalisation des applications - c'est-à-dire, en ayant de plus en plus d'applications écrites en utilisant des cadres qui génèrent des applications qui peuvent s'exécuter à travers de multiples dispositifs.
Mais ce n'est pas ce Monotouch est. Monotouch est tout au sujet de l'utilisation de la Pomme de cadres pour écrire des applications, mais à travers Mono, pas Objective-C. Donc, de ce point de vue que Monotouch est en train de faire n'est pas quelque chose qui devrait vraiment la peine d'Apple.
Je maintiens que les développeurs sont mieux de l'écriture dans la langue maternelle de la plate-forme qu'ils utilisent, comme les choses sont généralement plus lisse lorsque vous n'avez pas introduire un système qui peut avoir de l'abstraction d'adaptation d'impédance - le de Cacao cadres ont tous été construit pour être utilisé à partir d'Objective-C, et ils font le plus de sens quand on a l'habitude de la philosophie de l'Objective-C. Mais j'espère qu'Apple vient vers le bas sur le côté permettant de MonoTouch à être utilisé.
Tous Apple est en train de dire, c'est que vous devez maintenant utiliser 1980 langues pour développer votre compétition en battant l'état de l'art des Applications Mobiles....
Sens parfait. Sonne comme une stratégie gagnante pour moi.
Il arrête également utiliser de la 3e partie des bibliothèques que vous ne pouvez pas garantir que ont été développés dans droit en C, C++ ou Objective C.
Donc, fondamentalement, cela signifie que vous ne pouvez pas acheter dans les Jeux de l'API comme Unité.
Juste ajouter mes 2 cents. Il semble que, après la lecture de cette partie: (par exemple, les Applications qui lien Documenté Api par l'intermédiaire de la traduction ou de la couche de compatibilité ou de l'outil sont interdits) il n'y a rien à discuter. Ils ont exprimé sans ambiguïté. Non seulement sont-ils l'interdiction de MonoTouch et Unity3d, il semble qu'ils sont aussi l'interdiction de De Titane De Cadre. Cependant, après la lecture de cette article, je me suis vraiment confus.
Je ne suis pas familier avec les lois des états-unis, mais est-ce légal? Je veux dire, ne sont-ils pas la rupture de certaines lois anti-monopole?
En plus de tout cela, je ne peux pas comprendre leur motivation. Non seulement vont-ils perdre une partie d'un des développeurs de l'intérêt, ils perdent également un des développeurs de respect, je pense.
À compter d'aujourd'hui, la Section 3.3.1 de l'iOS d'Apple Developer Program Licence a été rétrocédé à l'ancien texte:
Apple a publié un déclaration officielle sur les changements de licence.
Cela semble indiquer qu'il est maintenant possible d'utiliser MonoTouch.
Un but de l'équipe de Mono est le portage de Silverlight à l'iPhone par le biais de MonoTouch/clair de Lune pour la croix-plate-forme de développement. C'est un peu comme le portage de Flash pour l'iPhone. Il est également Monodroid sur la façon de nous aider au portage d'applications et, vous le savez, Apple tourne amonk chaque fois que quelqu'un dit "Android" 🙂 à mon humble avis, si Apple est le ciblage Adobe avec le nouvel accord, ils sont ciblage Roman aussi. Nous sommes probablement spéculer et il y a un NDA, mais beaucoup d'entre nous ont passé beaucoup de temps sur cette plate-forme nous avons donc besoin de faire clairement la situation. Nous ne pouvons pas attendre l'été prochain pour discuter de cette question. Par exemple, j'ai été invité par un ami pour aider son entreprise à un prototype d'une MonoTouch demande d'un client. Le nouvel accord n'affectent que la distribution App Store? Qu'en est-maison de distribution?
Cette feuille de calcul google docs a une longue liste d'applications qui seront touchés par la nouvelle entente. Certains non négligeable de ceux qui ont été #1 dans l'appstore pour leur catégorie:
L'une des drôles de des inclusions est de Toy Story.
oMany applications ont été acceptés dans les derniers jours, écrite avec l'aide de monotouch et de l'unité, alors que je suis aussi de l'utiliser comme obj-c, depuis l'annonce et le changement dans l'accord, alors rendez-vous à la FIGURE,...le bon vieux'WTF vient à l'esprit. C'est un bipolaire petit cochon, il me semble.
AUSSI, la dernière Unité de Jeu GiantMOTO, qui est sous HOT NOUVEAUX JEUX - HIER, a sur son écran de démarrage onLoad en grosses lettres, ALIMENTÉ PAR l'UNITÉ. Donc, toutes les conjectures, des hypothèses, etc. c'est pas vraiment la porte. On pourrait dire que, dans la nouvelle version, il n'est certainement PAS appliquée. Et montouch est le seul développement platf ENTIÈREMENT expose iPhone API et construit ENTIÈREMENT en obj-c avec XCode.
De ce que le contrat de licence dit MonoTouch apps ne seront évidemment pas être admis dans l'AppStore.
La question la plus intéressante est que, à l'encontre de ce qui cadre /apps vont-ils faire respecter? Ils auront également à écrire des tests automatisés pour vérifier si les applications ont été écrits en natif ou pas, parce que les gens qui approuvent les applications risquent de ne pas avoir le temps ou les compétences pour le faire pour chaque application. Ces apps ne pas mettre un autocollant, il y 'a l'Aide des MonoTouch /Flash'.
Courte réponse à tout ce qui tache dans l'accord est OUI.
Apple est essentiellement prise de vue elle-même dans le pied de programmes limitant à un petit nombre de langues:
Ils sont délibérément de limiter quels sont les outils que vous pouvez utiliser pour développer pour l'iPhone, qui sera presque certainement obtenir dans de sérieux ennuis. Je suis sûr qu'une grande partie de la communauté vient de quitter la iPhone de développement et de migrer vers une autre plate-forme comme Windows Mobile, Symbian, Android et Maemo, qui sont totalement ouvert, vous êtes libre d'écrire votre application dans LOLCODE.
En dehors de ce qui peut rendre l'iPhone indésirable pour les développeurs, il donne aussi Adobe un beau baiser:
Apple a délibérément blocs Flash à partir de l'iPad, et maintenant ils sont également le blocage de l'iPhone. Le numero est Adobe Flash CS5 plus grande caractéristique est le déploiement d'applications Flash pour iPhone.
tl;dr: Apple est essentiellement de tir dans le pied avec ce mouvement.
C'est maintenant mois après le flash de la débâcle et il est assez évident Monotouch et de l'Unité font l'amende juste.
Comme par "Applications lien vers Documenté Api par l'intermédiaire de la traduction ou de la couche de compatibilité ou de l'outil sont interdits"
Monotouch compile le code vers le bas pour un binaire natif, il n'y a pas de "couche". Ils sont en se référant à somethign comme une .NET, Java JVM ou moteur d'exécution de Flash.
Mono applications normalement compile en bytecode qui est et nécessiterait JIT (just in time) de la compilation, de les exécuter ainsi un .Net framework ou Mono-cadre est nécessaire. Toutefois, dans le cas d'iOS et Android, Mono application compiler en code natif. Par conséquent, dans les yeux d'Apple, il n'y a pas de troisième couche, Apple ne sera jamais interdiction Mono. Alors vous pouvez vous sentir libre de se développer avec MonoTouch et distribuer vos applications. Pour vous assurer que vous de plus, il existe divers de Mono applications (y compris des jeux et des applications sur l'AppStore qui ont été autour pendant un long moment.