Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как я могу разработать для iPhone, используя машину для разработки Windows?

Автор вопроса: CommunityОтветов: 12

Есть ли способ повозиться с iPhone SDK на машине с Windows? Планируется ли выпуск iPhone SDK для Windows?

Единственный другой способ, который я могу придумать, - это запустить образ виртуальной машины Mac на сервере VMWare, работающем в Windows, хотя я не совсем уверен, насколько это законно.

  • Мигель де Икаса из Mono рассказал о использовании и компиляции Mono (порт для Linux. NET Framework) на iPhone. Jon Limjap 22.08.2008
  • Текущие правила говорят только о C, Objective-C или C ++. Это оставляет C # в стороне. David Thornley 27.08.2010
  • Ага. Из-за iOS4 TOS 3.3.1 Jon Limjap 27.08.2010
  • Также см. Обсуждение этого вопроса на странице gamedev.stackexchange.com/q/5403/3212 Gaurav Navgire 12.11.2010
  • TOS были обновлены, и теперь разрешен C # (среди всех других языков): macgasm.net/2010/09/09/ jjxtra 09.12.2010
  • Как насчет macincloud.com? :) Salman von Abbas 02.01.2013

ioswindowsiphone

Ответы

Ответ 1 · рейтинг 519 · Community

Конечно, можно разработать на машине Windows, на самом деле, мое первое приложение было разработано исключительно на старой Dell Precision, которая у меня была в то время :)

Есть три маршрута;

  1. Установите OSx86 (также известный как iATKOS / Kalyway) на второй раздел / диск и выполните двойную загрузку.
  2. Запустите Mac OS X Server под VMWare (Mac OS X 10.7 (Lion) и более поздних версий, прочтите обновление ниже).
  3. Используйте Delphi XE4 и службу macincloud. Это коммерческий набор инструментов, но поддержка компонентов и библиотек растет.

Первый путь требует изменения (или использования предварительно измененного) образа Leopard, который можно установить на обычный ПК. Это не так сложно, как вы думаете, хотя ваше соотношение успех / усилия будет зависеть от того, насколько близко оборудование на вашем ПК соответствует оборудованию Mac - например, если вы используете Core 2 Duo на материнской плате Intel, с видеокартой NVidia вы смеетесь. Если вы используете машину AMD или что-то в этом роде без SSE3, это немного усложняется.

Если вы приобрели (или уже владеете) версией Leopard, то это серая зона, поскольку в лицензионном соглашении с Leopard указано, что вы можете запускать ее только на компьютере с маркировкой Apple. Как отмечают многие, если вы наклеите наклейку Apple на свой компьютер, вы, вероятно, будете защищены.

Второй вариант более затратный. Лицензионное соглашение для версии Leopard для рабочих станций предотвращает ее запуск в режиме эмуляции, и, как следствие, в VMWare для этого нет поддержки. Однако сервер Leopard МОЖЕТ запускаться в режиме эмуляции и может использоваться для настольных целей. Однако сервер Leopard и VMWare дороги.

Если вас интересует вариант 1), я бы посоветовал начать с Insanelymac и прочитать разделы OSx86.

Я действительно думаю, что вам следует подумать, окупится ли время, которое вы потратите, тех денег, которые вы сэкономите. Это было для меня, потому что мне нравится возиться с такими вещами, и я начал во время ранних бета-версий iPhone, за несколько месяцев до того, как их App Store стал доступен.

В качестве альтернативы вы можете купить Mac Mini с низкими характеристиками на eBay. Для запуска SDK не требуется много лошадиных сил, и вы всегда можете продать его позже, если решите прекратить разработку или купить Mac получше.

Обновление: вы не можете создать клиентскую виртуальную машину Mac OS X для OS X 10.6 и более ранних версий. Apple не разрешает виртуализацию этих клиентских ОС. Начиная с Mac OS X 10.7 (Lion), Apple изменила лицензионное соглашение в отношении виртуализации. Источник: База знаний VMWare

Ответ 2 · рейтинг 190 · Community

Xamarin - хороший выбор. Он был куплен Microsoft и теперь встроен непосредственно в Visual Studio. Вы кодируете на C #. Со всеми обновлениями и функциями, которые они добавляют, вы можете делать все, кроме отправки в App Store из Windows, даже компилировать, собирать и развертывать на устройстве iOS.

Для игр отлично подходит Unity 3D. Редактор можно бесплатно использовать для разработки и даже для распространения (если ваш годовой доход составляет менее 100 000 долларов США). Unity поддерживает iOS, Android и большинство других платформ. Возможно, можно будет использовать функцию "Cloud Build" Unity, чтобы избежать использования Mac для развертывания, хотя по умолчанию Unity фактически выплевывает проект Xcode при сборке для iOS.

Другие варианты:

PhoneGap (html / javascript) также работает. Это не так хорошо для игр, но вполне прилично для обычных приложений с графическим интерфейсом.

Flutter (dart) - это бесплатная кросс-платформенная платформа для разработки мобильных приложений от Google. Напишите свой код в Dart.

React Native (javascript) - еще один популярный кроссплатформенный фреймворк, созданный Facebook.

Обратите внимание: для всех этих параметров вся или большая часть разработки может выполняться в Windows, но для создания двоичного файла для отправки в App Store по-прежнему требуется устройство MacOS. Один из вариантов - купить дешевый MAC Mini для окончательной сборки.

Ответ 3 · рейтинг 154 · Community

Если у вас взломанный iPhone, вы можете установить на него iphone-gcc toolchain. через Cydia, и таким образом вы можете просто скомпилировать приложения на iPhone. Приложения, разработанные таким образом, по-прежнему можно отправлять в App Store.

И хотя г-н Вальдес сказал, что это серая зона (что так и есть), взломать его невероятно легко и практически без риска. Да, это аннулирует вашу гарантию, но вы можете просто восстановить, и они никогда не узнают.

Ответ 4 · рейтинг 82 · Community

Большинство "так называемых решений Windows для разработки iOS без Mac" требуют Mac в конце просто для подписи и отправки в магазин приложений. Я проверил несколько, но не все (у кого есть время?)

В конце концов, слишком сложно изучить "их очень простой способ программирования iOS без Objective-C", у них много ошибок. На самом деле цель, которую они ставят, на мой взгляд, недостижима.

Кроме того, они часто заставляют вас использовать операторы, эквивалентные Objective-C, просто на другом языке. Они вроде бы выглядят одинаково, но всегда есть тонкие различия, которые вам нужно изучить поверх obj-c. Что также имеет еще меньше смысла, потому что теперь вместо того, чтобы учиться меньше, вы должны учиться больше. Так в чем же выгода? К тому же они стоят дорого, потому что их очень сложно развивать.

У многих вообще отсутствуют какие-либо возможности отладки.

По моему честному мнению, если вы заядлый разработчик iOS, то обязательно купите лучший Mac и изучите objective-c. Это дорого и требует времени, но если это ваш путь, оно того стоит.

Для периодического использования проще арендовать удаленную службу Mac, например XCodeClub.com.

Ответ 5 · рейтинг 57 · Community

SDK доступен только в OS X, поэтому вам придется использовать Mac. Если вы не хотите покупать Mac, вы можете запустить OS X на виртуальной машине в окне Windows или установить OS X на свой компьютер.

По моему опыту, решение виртуальной машины необычно медленное (на ноутбуке core2 duo с оперативной памятью 2G). Если вы хотите попробовать, поищите торрент. Наверное, не стоит.

Другой вариант - установить OS X на ваш компьютер, что обычно называют хакинтошем. Хакинтоши работают довольно хорошо - мой друг только что продал свой Mac, потому что его четырехъядерный хакинтош Dell был на самом деле намного быстрее, чем оборудование Apple (и стоил около 1/3). Вы можете найти множество статей о том, как это сделать; вот один о том, как установить на ноутбук Dell Inspirion 1525: hackbook профессиональное руководство

Конечно, оба эти варианта, скорее всего, противоречат какой-либо схеме лицензирования, поэтому действуйте на свой страх и риск.

Ответ 6 · рейтинг 57 · Community

Вы можете использовать WinChain

Цитата на странице проекта:

Это самый простой способ создать набор инструментов iPhone на компьютере под управлением Windows XP / Vista, который, в свою очередь, может взять исходный код Objective-C, который вы пишете с использованием их заголовков UIKit (включенных в winChain), и скомпилировать его в приложение, которое вы можете использовать. на вашем iPhone.

Ответ 7 · рейтинг 28 · Community

Вам не нужно ни иметь Mac, ни изучать Objective-C. Вы можете разрабатывать в разных средах и в дальнейшем компилировать в Objective-C.

разработка для iphone и ipad под управлением osx 10.6 (снежный барс)

В этой статье, написанной одним из наших разработчиков, дается довольно подробное описание установки OS X Snow Leopard в Windows с помощью iBoot, затем установки Vmware (с инструкциями), а затем запуска среды разработки iPhone ... и нескольких дополнительных интересных вещей. Супер полезно для меня.

Надеюсь, это поможет. Он использует Phonegap, поэтому вы можете разрабатывать сразу на нескольких платформах смартфонов.

Ответ 8 · рейтинг 23 · Community

Вы можете использовать Tersus (бесплатно, с открытым исходным кодом).

Ответ 9 · рейтинг 22 · Community

Devkit, который позволяет разрабатывать приложения для iPhone в Objective-C, C++ или просто на C с помощью Visual Studio:

Проверьте это на среде сборки iOS

Вы можете создавать приложения для iPhone прямо в Visual Studio (2008, 2010, Express).

Довольно аккуратно, он даже создает IPA файла для вашего приложения после успешной компиляции. Код работает как на взломанных устройствах, для остальной части планеты я считаю, что окончательная компиляция и отправка в App Store должны выполняться на Mac. Но все же он позволяет вам разрабатывать с использованием хорошо известной IDE.

Ответ 10 · рейтинг 19 · Community

Конечно, вы можете написать код Objective-C в блокноте или других программах, а затем перенести его на Mac для компиляции.

А если серьезно, это зависит от того, разрабатываете ли вы официальные приложения для размещения в App Store или разрабатываете приложения для взломанного iPhone. Для написания официальных приложений Apple iPhone SDK, для которого требуется Intel Mac, кажется, единственный практический способ. Однако существует неофициальная цепочка инструментов для написания приложений для взломанных iPhone. Вы можете запустить его в Linux и Windows (используя Cygwin).

Ответ 11 · рейтинг 18 · Community

Попробуйте macincloud.com. Он позволяет арендовать Mac и получать к нему доступ через удаленное управление RDP. Затем вы можете использовать свой компьютер для доступа к Mac, а затем разрабатывать свои приложения.

Ответ 12 · рейтинг 18 · Community

Скоро вы сможете использовать Adobe Flash CS 5 для создания приложений для iPhone на Windows:

flashcs 5

приложения flashcs5 для iphone

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы