Выбирая это на моем телефоне, сделайте это немного кратким - извиняйтесь за это.
В любом случае:
- Как сказал в предыдущем ответе, были MonoTouch приложения выпущен в App Store. Будь то два или баджон, это не так важно. Разница между одним и нолем бесконечна - ответ однозначен: Да, Apple одобрит приложения MonoTouch.
- MonoTouch играет по правилам Apple. Он выплескивает собственные биты. Нет никакой интерпретации кода, и нет JITting. Ваше приложение MonoTouch представляет собой набор, как и любой другой, и содержит собственный бинарный файл, как и любой другой.
- Приложения MonoTouch - это больше, чем если бы они были написаны с помощью стека Apple. Это связано с тем, что ваше приложение MonoTouch полагается на подмножество структуры Mono/.Net. В этом отношении, однако, как только вы перейдете к кораблям, нет ничего особенного в приложении MonoTouch. Я работал в компании, где мы создали наши приложения (разработанные с использованием стека Apple) против нашей пользовательской инфраструктуры. Это увеличило размер наших приложений, но также сократило время производства (и это всегда компромисс, не так ли?). Кроме того, размер пакета приложений сразу после компиляции может быть обманчивым. Поскольку пакеты упакованы в App Store, размер значительно уменьшается - вы можете легко написать приложение MonoTouch, которое упадет ну в пределах допустимого предела размера для приложений, поставляемых OTA (я поднимаю это, потому что это вопрос MT n0obs (по праву) спрашивать). Таким образом, у Apple нет реальной причины отклонения в зависимости от размера.
- Независимо от того, является ли это MonoTouch или обычным внутренним фреймворком, подобным тому, с которым я работал/работал, материал MonoTouch при отправке с вашим приложением - это только другая структура, которая могла быть написана в Objective- C.
- Если вы обеспокоены настройкой своего приложения для распространения с использованием всего стека MonoTouch и как это может повлиять на ваши шансы на одобрение, вы можете сказать MonoDevelop (или утилиту mtouch из командной строки) для вывода Xcode проект. Вы увидите, что ваш код был преобразован - вы будете смотреть на собственную сборку (а не на какой-то вкус IL). Вы можете создавать и запускать свое приложение MonoTouch прямо из Xcode, и к этому моменту MonoTouch в основном не работает (за исключением рамки, которую вы создаете против (например, MapKit)).
По какой-то причине все это беспокоит очень маленькое, но вокальное подмножество iPhone-разработчиков, которые по какой-то причине не выдерживают мысли людей, которых они не знают, используя другой инструмент для создания приложений. Но их ненависть не меняет простой факт, что Apple приняла приложения MonoTouch (и приложения Unity задолго до этого).
Основная причина, по которой вы собираетесь отклонить MT-приложения, - это то, что MT-разработчики, по моему опыту (я разговаривал с некоторыми из них, после нескольких разговоров, размещения на форумах, списков рассылки здесь ...), разве они еще не научились разрабатывать приложение для iPhone iPhone. Это то, что разработчики iPhone должны делать нерегулярность , как они пишут свои приложения. MonoTouch не является препятствием - он знает, например, что Apple хочет, чтобы ваше приложение выглядело определенным образом и работало определенным образом - оно должно выглядеть и чувствовать себя и вести себя как другие (хорошие) приложения для iPhone, и не должно среди примеров попыток написать настольные приложения для телефона (где ваш средний разработчик делает свою первую ошибку при переходе на мобильную разработку).
В конечном счете, ваш инструмент выбора не будет иметь значения до тех пор, пока он создает биты, которые играют по правилам Apple (например, MonoTouch). Настоящим препятствием является изучение iPhone-дизайна приложения.
. Разработчики приложений .Net, будь то в Windows, Windows Mobile или везде, где работает Mono (не MonoTouch), привыкли разрабатывать приложения в соответствии с их собственными вкусами. Это не летает в мире iPhone.
Вы можете безопасно использовать MonoTouch. Как было показано, Apple будет одобрить приложения MT.
То, что вам действительно нужно делать (опять же, независимо от того, какой из выпадающих стеков вы выбираете), читает документы Apple по дизайну iPhone и их рекомендации. Есть огромная толпа разработчиков из-за того, что они приписывают отклонения в своих приложениях Apple, будучи злым (или что-то еще - неосведомленные оправдания, в основном), когда правда в том, что их приложения являются мусором, и ясно, что разработчики не играли по правилам (или даже потрудитесь прочитать правила).
В конце концов, во многих случаях вы будете писать гораздо меньше кода при использовании MonoTouch, а стоимость для этого - это более крупный пакет приложений (который, как я сказал, выйдет очень разумно, после того, как он был застегнут для распространения).
Это не проблема. С 3g пользователи не потеют загрузку приложений размером 2-3 МБ. Если он достаточно мал, чтобы отправить OTA, все в порядке. И в тех случаях, когда ваше приложение выходит за лимит, вероятно, встроенные ресурсы (медиа-изображения, видео и т. Д.) - это то, как пакеты обычно набухают до размеров Wi-Fi), и это то, с чем приходится сталкиваться разработчикам Objective-C , так что это не проблема MonoTouch.
Таким образом, игнорировать ненавистник (которые даже не пытались MonoTouch или надоевшими, чтобы узнать, как она работает), и будьте уверены, что, если ваше приложение соответствует рекомендациям Apple, нет нет оснований для их отвергать Это. Это не означает, что ваше приложение гарантировано при принятии, если вы его правильно разработали (многие приложения отвергаются без видимых причин), но вы можете более или менее полагаться на себя с разработчиками, используя инструменты Apple.
Надеется, что это помогает :)
Кажется дубликат: http://stackoverflow.com/questions/1583856/is-monotouch-worth-the-cost-or-should-i-just-learn -объектив-c –
Похоже, что основным моментом этого вопроса является сравнение стоимости владения monotouch vs learning obj-c. Основное внимание уделяется использованию монотота в реальном мире. Я получаю сходство, но, я думаю, ответы будут разными. –
Плохая новость об этом: http://stackoverflow.com/questions/2604033/is-monotouch-now-banned-on-the-iphone –