Question

MonoTouch semble comme une grande plate-forme pour le développement iPhone, mais je suis préoccupé par le déployer sur l'Apple Store. Y a-t-il des exemples d'applications construites avec ce qui sont actuellement disponibles sur iTunes?

Nous commençons un nouveau projet pour l'iPhone, et de garder l'ensemble de la pile en C # serait génial, mais nous ne voulons pas courir le risque d'être tourné vers le bas à partir du magasin d'Apple en raison de MonoTouch.

J'ai lu plusieurs jeux qui utilisent actuellement mono (non MonoTouch) pour les graphismes 3D, mais n'a pas pu trouver quoi que ce soit au sujet MonoTouch.

Était-ce utile?

La solution

En tapant cela sur mon téléphone, donc va être un peu laconique - excuses pour cela.

Quoi qu'il en soit:

- Comme l'a dit dans une réponse précédente, il y a eu des applications MonoTouch publiées à l'App Store. Que ce soit deux ou bajillion n'a pas d'importance tant. La différence entre un et zéro est infinie - la réponse est sans équivoque:. Oui, Apple approuvera des applications MonoTouch

- MonoTouch joue par les règles d'Apple. Il recrache les bits natifs. Il n'y a pas d'interprétation du code de passe, ni aucune JITting. Votre application MonoTouch est un paquet comme un autre, et il contient un fichier binaire natif comme les autres.

- applications MonoTouch sont plus grand que ce qu'ils seraient si elles ont été écrites avec la pile d'Apple. Ceci est parce que votre application MonoTouch repose sur un sous-ensemble du cadre Mono / .Net. À cet égard, bien que, une fois que vous descendez à ce que navires , il n'y a rien en particulier différent d'une application MonoTouch. Je travaillais dans une entreprise où nous avons construit nos applications (développées avec la pile d'Apple) contre notre cadre personnalisé. Il a augmenté la taille de nos applications, mais il a également coupé en bas sur le temps de la production (et qui est toujours le compromis, non?). De plus, la taille du faisceau d'application juste après la compilation peut être trompeur. Parce que les faisceaux sont compressés pour l'App Store, la taille diminue considérablement - vous pouvez facilement écrire une application MonoTouch qui tombe bien dans la limite de taille acceptable pour les applications livrées OTA (je soulève cette question parce qu'il est un MT question n0obs (à juste titre) ont tendance à demander). Alors, Apple n'a pas vraiment de raison de rejeter fonction de la taille.

- Que ce soit MonoTouch ou un cadre personnalisé en interne comme celui que je travaillais sur / avec, les choses MonoTouch, quand livré avec votre application, est juste un autre cadre qui aurait pu être écrit en Objective C .

- Si vous êtes préoccupé par la configuration de votre application pour la distribution en utilisant l'ensemble de MonoTouch pile et comment cela pourrait affecter vos chances d'approbation, vous pouvez dire MonoDevelop (ou l'utilitaire mTouch de la ligne de commande) pour émettre un projet Xcode . Vous verrez que votre code a été transformé - vous regarderez assembleur natif (pas une saveur d'un IL). Vous pouvez créer et exécuter votre application MonoTouch produit de droite au sein de Xcode, date à laquelle MonoTouch est essentiellement hors de l'image (sauf en tant que cadre vous construisiez contre (comme MapKit, par exemple)).

Pour une raison quelconque, tout cela dérange un très petit, mais vocal, sous-ensemble de devs iPhone qui, pour une raison quelconque, ne peut pas supporter l'idée de personnes qu'ils ne connaissent pas l'aide d'un autre outil pour créer des applications. Mais leur hateage ne change pas simple fait que Apple a accepté des applications MonoTouch (et les applications Unity bien avant).

La principale raison que vous allez voir pour MT apps rejet est que MT devs, dans mon expérience (j'ai parlé à un certain nombre - après avoir donné quelques discussions, l'affichage des forums, listes de diffusion, ici. ..), est qu'ils n'ont pas encore appris à développer une iPhone app. C'est quelque chose d'iPhone devs doivent faire regarldess de comment ils écrivent leurs applications. MonoTouch n'est pas l'obstacle - c'est de savoir, par exemple, que Apple veut votre application pour regarder une certaine manière et de travailler d'une certaine manière - il faut regarder et se sentir et se comporter comme les autres (bonnes) des applications iPhone, et ne doit pas parmi les exemples de tentatives d'écrire des applications de bureau pour un téléphone (qui est où votre dev moyenne fait sa première erreur lors de la transition vers le développement mobile).

En fin de compte, l'outil de votre choix ne va pas à la matière aussi longtemps que cela crée des bits qui jouent par les règles d'Apple (comme MonoTouch). Le véritable obstacle est l'apprentissage à la conception iPhone de l'application.

applications .Net devs, que ce soit sous Windows, Windows Mobile, ou où Mono (non MonoTouch) fonctionne, sont habitués à développer des applications en fonction de leurs propres goûts. Cela ne vole pas dans le monde de l'iPhone.

Vous pouvez sans risque aller with MonoTouch. Comme on l'a montré, Apple approuver des applications MT.

La chose dont vous avez vraiment besoin de faire (encore une fois, quelle que soit la pile dev vous choisissez) est lire les documents d'Apple sur la conception de l'application iPhone et leurs directives . Il y a une foule énorme de devs leur attribuant leur refus d'application à Apple d'être mal (ou quoi que - excuses mal informés, essentiellement), quand la vérité est que leurs applications sont des ordures et il est clair que les développeurs ne sont pas les règles du jeu (ou même la peine de lire les règles).

En fin de compte, dans de nombreux cas, vous écrivez beaucoup moins de code lors de l'utilisation MonoTouch, et le coût qui est un paquet d'applications plus large (qui, comme je le disais, sortira très taille raisonnable après qu'il a été compressé pour distribution).

Ce n'est pas vraiment un problème. Avec 3g, les utilisateurs ne transpirent pas le téléchargement 2-3MB des applications de taille. S'il est assez petit pour envoyer OTA, tout va bien. Et dans les cas où votre application dépasse la limite, il est des ressources intégrées probablement (médias - images, vidéos, etc. - voilà comment les faisceaux gonflent généralement de wifi uniquement des tailles), et qui est quelque chose devs Objective-C doivent traiter, trop , de sorte que ce n'est pas un problème MonoTouch.

Alors, ignorer les ennemis (qui ont même pas essayé MonoTouch ou pris la peine d'apprendre comment il fonctionne), et soyez assurés que, aussi longtemps que votre application est conforme aux directives d'Apple, il y a pas raison pour eux de le rejeter. Cela ne signifie pas que votre application est l'acceptation garantie tant que vous concevez correctement (beaucoup d'applications se rejeté sans raison apparente), mais vous pouvez vous considérer, plus ou moins, d'être sur un pied d'égalité avec les devs en utilisant les outils d'Apple.

Hope this helps:)

Autres conseils

La communauté MonoTouch maintient une des applications MonoTouch qui sont disponibles aujourd'hui sur l'Apple Store et que ont été écrit en utilisant MonoTouch .

La plate-forme developement jeu utilise la même base de code tactile mono pour le support C # (et ont contribué à la projet).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top