Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
IPhone SDK
- iPhone
- iPod
- iPad
- Apple TV
Тип ПО: API для разработчиков ПО
Веб-сайт https://www.apple.com/ru/ios
iOS SDK (ранее iPhone SDK) — это набор средств для разработки программного обеспечения,выпущенный в марте 2008 года корпорацией Apple, который помогает разработчикам создавать собственные приложения для устройств и платформ Apple для iOS. [Источник 1]
Содержание
История
Рисунок 1 — Стив Джобс на презентации платформы IPhone SDK
17 октября 2007 года в открытом письме, опубликованным в блоге «Горячие новости» компании Apple,Стив Джобс, основатель компании, анонсировал SDK, который должен был быть предоставлен сторонним разработчикам в феврале 2008 года. [Источник 2] Однако инструментарий вышел лишь 6 марта. Основной функцией IOS SDK является возможность разрабатывать приложения под iPhone, iPod Touch и iPad.
В начале апреля на пресс-конференции в калифорнийской штаб-квартире компании Apple Стив Джобс сделал несколько громких заявлений. Помимо анонсирования нового программного обеспечения для iPhone, было объявлено о выходе в свет официального набора для разработчиков прикладных программ (SDK) для Apple iPhone, а точнее — его бета-версии. SDK ждали с нетерпением, ранее в прессу неоднократно просачивались сведения о его выходе в начале-середине лета. Появление же в начале апреля вызвало настоящий ажиотаж — всего за первые две недели релиза с официального сайта Apple Developer Connection было загружено более 100 000 экземпляров комплекта. Даже если учесть то, что большая часть, от 50 до 90 процентов от общего числа скачавших SDK, делали это из простого интереса («посмотреть, что оно из себя представляет»), число «результативных» загрузок все равно впечатляет. Всего 1000 разработчиков способны написать 1000 различных приложений в течении полугода. Судя по ажиотажу по отношению к SDK со стороны IT-сообщества, владельцы iPhone не скоро начнут жаловаться на недостаток прикладного программного обеспечения для своих телефонов.
Особенности
Комплекты для разработки программного обеспечения могут быть лицензированы поставщиком программного обеспечения. Как правило, они предназначены для оказания помощи в разработке для конкретной платформы, которая происходит за пределами данной компании, например, когда отдельные разработчики представляют приложения или инструменты для использования с конкретной платформой.
Программист, как правило, получает SDK непосредственно от разработчика целевой технологии или системы. Часто SDK распространяется через Интернет. Многие SDK распространяются бесплатно для того, чтобы поощрить разработчиков использовать данную технологию или платформу.
Разработчики могут устанавливать любую цену, превышающую минимальную установленную, за их приложения, которые будут распространяться через App Store, из которой они будут получать 70%. Кроме того, они могут распространять своё приложение бесплатно, в этом случае они должны платить только членские взносы, которые составляют 99 долларов в год. [Источник 3]
Состав SDK
Apple iOS использует вариант того же ядра XNU, что и Mac OS X.
Рисунок 2 — Комплект IPhone SDK
SDK разбита на следующие наборы: [Источник 4]
- Cocoa Touch
- Мультитач управление
- Поддержка акселерометра
- Иерархия видов
- Локализация
- Поддержка камеры
- Мультимедиа
- OpenAL
- Микшерный пульт|Микширование и запись аудио
- Воспроизведение видео
- Форматы изображений
- Кварц
- Анимационное ядро
- OpenGL ES
- Сервисное ядро
- Сеть
- Встроенная база данных SQLite
- Локационное ядро
- Многопоточность
- CoreMotion
- Ядро OS X
- TCP/IP
- Сокеты
- Управление питанием
- Файловая система
- Безопасность
Наряду с набором инструментов Xcode, SDK содержит iPhone Simulator, используемый для имитации внешнего вида iPhone на компьютере разработчика, ранее называвшийся «Aspen Simulator». [Источник 5]
Подробная структура SDK
Как говорилось ранее, iPhone SDK — это набор программных компонентов, среды разработки, документации и всего того, что необходимо программисту для создания приложений для той или иной платформы. В частности, в состав Apple iPhone SDK входит следующий набор необходимостей и полезностей:
- Среда разработки Xcode в составе удобного редактора исходных кодов, системы управления проектом и графического отладчика. Собственно, сам инструмент написания и компиляции приложений — молоток и гвозди строителя программ для iPhone. Способ связать человеческие желания и запросы с аппаратными возможностями телефона.
- Эмулятор iPhone, полностью имитирует программную среду «яблокофона». Любая написанная программа должна пройти тестирование. Перед тем как «заливать» приложение на аппаратную платформу, желательно провести проверку на эмуляторе. Удобство заключается в том, что большинство ошибок, связанных с несовместимостью с операционной системой, можно отловить прямо на рабочем месте разработчика.
- Дополнительные инструменты. Apple позиционирует их как набор утилит для сбора различной статистики разрабатываемых приложений (производительность, потребление оперативной памяти и т.п.). Отслеживание ключевых параметров позволит сделать программу более «проворной» и менее требовательной к ресурсам.
- Набор видеофайлов и электронных документов, которые помогут начать работу с SDK. По словам Apple, описывают все, начиная с особенностей программной среды и вспомогательных инструментов и заканчивая методами разработки и оптимизации приложений. Весьма полезный комплект не только для начинающего разработчика, но и для программиста с опытом, решившего переквалифицироваться на написание мобильных приложений.
- Библиотека iPhone Reference Library — всеобъемлющий сборник разнообразной информации: документов, руководств и статей, касающихся iPhone.
- Руководства How-To. Помощь в написании модульных задач: например, как проиграть видео, звук и заставить перемещаться изображение и т.д.
- Примеры кода. Можно изучать их для того, чтобы разобраться в особенностях программирования под iPhone, а можно и включать их целиком в код собственных программ. Apple разрешает использовать их любым способом.
Принцип работы с SDK
Для работы с программными средствами SDK, необходимо проделать несколько этапов: скачать с официального сайта SDK, ознакомиться с руководством, написать само приложение (или приложения), продать их тысячными тиражами и получать с нее (них) прибыль. Но не все так просто, как может показаться на первый взгляд. При попытке практической реализации сценария можно неизбежно столкнуться с некоторыми особенностями.
Мировому сообществу было сразу объявлено то, что Apple iPhone SDK смогут использовать только специалисты, работающие в ОС Mac OS X Leopard на рабочих станциях Apple Macintosh. Версии SDK для операционных систем семейства Windows просто не предусмотрено. Похоже на то, что корпорация воспользовалась резко возросшим вниманием к iPhone и решила на этой волне поднять продажи собственных рабочих станций. Чтобы выкладывать программы на AppStore, надо заплатить 99$ — в случае, если ведутся разработки свободно-распространяемых или коммерческих программ, $299 — в случае разработки проприетарного ПО.
Что касается недоработанности представленного SDK, то, одной стороны, стоит отметить, что уже на момент речи Стива Джобса компании Electronic Arts и Sega представили игры, разработанные с использованием нового пакета. Это может свидетельствовать о том, что SDK, во-первых, вполне жизнеспособен, а во-вторых — перспективен, раз такие монстры игрового рынка выделили на его изучение временные и людские ресурсы. С другой стороны, компания Adobe распространила заявление, в котором говорится о текущей невозможности портировать Flash-плеер под iPhone. [Источник 6]
Альтернативные способы разработки
Программы для iPhone можно писать и без SDK, т.е. даже работая на компьютере с операционной системой Windows. Разработчику для создания полнофункциональных приложений понадобятся ASP.Net, C#, ASP.Net AJAX и расширения WebKit. Правда, в этом случае коммерческого будущего у получившегося продукта не будет — AppStore просто-напросто не пропустит для публикации ПО, созданное без использования SDK.
Во-вторых, еще до выхода официального iPhone SDK от Apple программисты могли писать приложения под «яблочный телефон» с помощью неофициального SDK. Он был подготовлен Лукасом Ньюманом (Lucas Newman), позже нанятого на работу компанией Apple, и Беном Столхудом (Ben Stahlhood), из-под руки которого вышло исчерпывающее руководство по разработке приложений с помощью среды разработки XCode 3.0 (естественно, на ПК под управлением Mac OS X 10.5 «Leopard»).
Мост Windows для iOS
Используя проект с открытым исходным кодом корпорации Майкрософт, вы можете сохранить приложение для iOS на Objective-C и одновременно использовать множество поддерживаемых платформ iOS с функциями Windows.
Начало работы с мостом
1. Установка Visual Studio
Если у вас еще нет Visual Studio, можно бесплатно скачать Visual Studio Community. Если у вас нет компьютера, опробовать мост можно с помощью доступной для скачивания виртуальной машины для оценки в выбранной вами среде виртуализации.
2. Установка моста Windows для iOS
Установить мост легко. Просто скачайте двоичный файл из репозитория GitHub и извлеките архив winobjc.zip в правильное расположение на компьютере.
3. Разработка приложения
Импортируйте свой проект Xcode в Visual Studio, воспользовавшись инструментом vsimporter в составе пакета SDK, или начните создавать следующее потрясающее приложение на универсальной платформе Windows в Visual Studio с помощью Objective-C. Дополнительные сведения об использовании vsimporter см. на нашей странице в Википедии.
Создание моста на основе исходного кода с целью расширения возможностей сообщества или внесения своего вклада в его развитие.
1. Установка Visual Studio
Если у вас еще нет Visual Studio, можно бесплатно скачать Visual Studio Community. Если у вас нет компьютера, опробовать мост можно с помощью доступной для скачивания виртуальной машины для оценки в выбранной вами среде виртуализации.
2. Клонирование репозитория
Клонируйте наш репозиторий GitHub, создайте собственную ветвь и приступайте к исследованию. Если вы обнаружите неподдерживаемый программный интерфейс, сообщите об этой проблемы, чтобы мы решили ее в приоритетном порядке
3. Создание пакета SDK
Создайте мост, используя включенное решение Visual Studio в каталоге /build. Дополнительные сведения см. на нашей странице в Википедии.
4. Установка моста Windows для iOS
После создания пакета SDK перейдите в папку /build/SDKPackage/Release и извлеките архив winobjc.zip в правильное расположение на компьютере.
5. Разработка приложения
Импортируйте свой проект Xcode в Visual Studio, воспользовавшись инструментом vsimporter в составе пакета SDK, или начните создавать следующее потрясающее приложение на универсальной платформе Windows в Visual Studio с помощью Objective-C. Дополнительные сведения об использовании vsimporter см. на нашей странице в Википедии.
6. Участие
После согласования авторского лицензионного соглашения (CLA) по проекту отправьте запрос на включение, добавив в него свои тесты и изменения в коде SDK, чтобы сделать работу других участников сообщества более удобным.
Преобразование приложения для iOS в приложение для Windows
Узнайте, как автоматически создавать решения Visual Studio на основе ваших проектов Xcode и получить необходимые средства для разработки собственных приложений UWP для Windows с помощью уже знакомого вам языка Objective-C.
*Примеры приложений, выполняемых на устройствах с Windows, приведены исключительно для иллюстрации и являются вымышленными.
*Некоторые сведения относятся к предварительным версиям продуктов, в которые перед коммерческим выпуском могут быть внесены существенные изменения. Майкрософт не дает никаких гарантий, прямых или косвенных, в отношении указанной здесь информации. Мост Windows для iOS не связан с Apple Inc, не спонсируется и не поддерживается компанией.
7 способов создания приложений для iPhone на Windows
Какое-то время назад я решил привести пару способов создания приложения для iPhone и iPad, доступных на Windows. Сейчас эта тема всё ещё актуальна. Так что я решил дополнить этот список и включить некоторые другие способы, появившиеся после написания первого сообщения, и те, которые всё ещё находятся в разработке, но уже привлекают, кажутся интересными. Обратите внимание на то, что официальных программ под Windows для разработки приложений на iPhone не существует (и они вряд ли когда-нибудь появятся).
На данной стадии если вы хотите выложить своё приложение в iPhone AppStore от Apple, то вам придётся компилировать его на официальном ПО для iPhone, которое доступно для Mac OS X, использовать Flash’s iPhone Packager, Airplay SDK, либо отправить кому-нибудь свой код для компилирования. Сейчас же, я знаю, есть одно «хакинтошское» решение, но я не буду о нём рассказывать, не только потому, что оно, возможно, нелегальное, но я видел того, кто попробовал так делать. и это превратилось в долгую мороку — на каждое обновление ОС и SDK уходили часы, когда они могли просто купить Mac Mini меньше чем за $700 и не мучиться.
Говорят, что есть способы разработки приложений для iPhone на Windows. Повторюсь, что никакого издания официального SDK для iOS не существует — и я более чем уверен, что не существует никаких официальных способов, несмотря на все маркетинговые речи, которые произносят некоторые продавцы. Если вы увидите, как какой-нибудь продавец утверждает, что их продукт — это официальный SDK для разработки приложений для iPhone на Windows, мой вам совет: держитесь от него подальше.
Я разделяю указанные здесь способы на те, с помощью которых уже были созданы приложения, доступные в продаже, и те, которые, на мой взгляд, особенно заслуживают внимания.
Данные альтернативы для Windows включают игровые движки, html/javascript решения для создания гибридных приложений, а также обычные программы для создания приложений для iPhone/iPad.
Способы создания приложений для iPhone на Windows
- Flash CS5.5 — является очень хорошим решением совместно с Flash iPhone Packager. Упаковщик для iOS позволяет компилировать приложения на платформе Windows. Если вы уже использовали Флэш, то вы являетесь обладателем новейших стандартов Apple. Он хорошо работает, однако не ждите, что игры с высокими техническими требованиями, а также Papervision на нём запустятся. Наличие компьютера с Mac не требуется. Кто-то спрашивал, возможно ли создание iOS флэш-приложений в среде, отличной от официальной среды Adobe. безусловно, вы можете компилировать приложения с помощью компилятора Flex и упаковывать их до тех пор, пока вы следуете рекомендациям ASME.
- Airplay SDK — Airplay SDK позволяет вам создавать игры и подписывать свои приложения на Windows. Отличное решение как для 2D, так и для 3D игр и приложений, благодаря бесплатному предложению от независимых разработчиков.
Оба этих варианта могут компилировать стандартный код iPhone прямо на вашей Windows. Большое количество приложений, доступных в AppStore, было создано с их помощью. - Unity 3D — игровой движок и редактор, использующий Boo и C# и работающий как на Windows, так и на Mac.
- Stonetrip S3D — игровой движок и редактор, использующий LUA и работающий на Windows.
Эти игровые движки позволяют вам создавать приложения на Windows, однако для их тестирования/компилирования вам потребуется Mac. - Appcelerator Titanium — Хорошее решение, имеющее довольно широкую и живую аудиторию. Приложения не требуют высокой производительности, так как они создаются с использованием html/javascript и могут быть скомпилированы как стандартные приложения и отсылаться в AppStore.
- Genuitec MobiOne — это создатель интерфейса, который использует фреймворк PhoneGap для обеспечения стандартной функциональности. Он работает только на Windows и базируется на HTML/Javascript.
Данные способы позволяют создавать приложения с помощью web-технологий (HTML/CSS/Javascript) и в последствии запускать их через Objective-C фреймворк, который отвечает на действия в UIWebView, тем самым предоставляя вам доступ к стандартной функциональности на iPhone. Эти фреймворки бесплатные. Для стандартного тестирования/компиляции потребуется Mac. - Dragonfire SDK — Интересный способ, позволяющий создавать приложения, использующие их собственные SDK на Windows. Далее вы отправляете им свой исходный код, который они компилируют, и вы скачиваете уже готовый файл iOS приложения. Вы загружаете свой код для компилирования на их сервер (при условии, что у вас стоит версия Ultimate). Я его упомянул, так как мне нравится его синтакс, и он довольно популярен, а также является хорошим упаковщиком с удачным симулятором на Windows.
Существует ещё пара других решений, которые либо ещё тестируются, либо являются платными без каких-либо trial-версий (или даже в некоторых случаях без скриншотов), либо просто ещё не вышли. Многие из них, по-видимому, являются упрощёнными версиями Dragonfly SDK, который позволяет разрабатывать iPhone приложения на Windows путём компилирования вашего исходного кода.. Airplay SDK, возможно, на данный момент является наиболее продвинутым «iOS ПО для Windows», доступным бесплатно.
Разработка приложений для iPhone на Windows уже реальна
Если вы действительно решили создавать приложения для iPhone на Windows и даже не хотите покупать Mac Mini, то советую вам использовать html/javascript программы, такие как PhoneGap/Appcelerator либо Airplay SDK, а затем найти кого-нибудь с Mac и попросить их вам помочь. Airplay SDK является единственным бесплатным решением для Windows для создания высококлассных игр на iPhone/iPad. Вы можете использовать Флэш-разработчик, но на данный момент у него имеются ограничения в качестве. Однако скоро выйдет новая версия.
Обновление: к сожалению, Airplay SDK был переименован в Marmalade SDK и больше не доступен бесплатно независимым разработчикам.